Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Saisie obligatoire sous condition

  • Initiateur de la discussion Initiateur de la discussion PERRINFAB
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

PERRINFAB

XLDnaute Nouveau
Bonjour

Je sollicite votre aide sur la mise en place d'un contrôle de saisie.

Je construits un document excel permettant aux utilisateurs de saisir leurs besoins en personnel temporaire.

Si la cellule A1 est renseignée (liste de choix) alors la cellule B1 doit être alimentée (zone commentaire obligatoire) par l'utilisateur.

Je souhaite que pour poursuivre le reste de sa saisie, l'utilisateur soit contraint de saisir une valeur en B1 (uniquement si A1 est renseignée)

Merci pour votre aide

Bien cdt

Fabrice
 
Re : Saisie obligatoire sous condition

Bonjour,

Macro à placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False

If Range("A1") = "" And Target.Address <> "$A$1" Then
Application.Undo
Range("A1").Select
End If

If Range("B1") = "" And Target.Address <> "$A$1" And Target.Address <> "$B$1" Then
Application.Undo
Range("B1").Select
End If

Application.EnableEvents = True
End Sub

A+
 
Dernière édition:
Re : Saisie obligatoire sous condition

Bonsoir

Je prends connaissance de vos éléments de réponse.

J'ai omis d'apporter une précision importante :

Si ma cellule A1 est renseignée alors la cellule B1 doit être saisie
Ensuite en cas de création de lignes supplémentaires (type base de données), je souhaite que ce contrôle de saisie s'effectue pour les cellules A2 et B2 puis A3 et B3 ... etc

Il s'agit de fonctionner plutôt en cellule à gauche ou à droite en fonction de la cellule cible.

Merci de votre contribution

Bien cdt

Fabrice
 
Re : Saisie obligatoire sous condition

Bonjour le fil,

Pas sûr d'avoir compris:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 2 Then
  If IsEmpty(Target.Offset(0, -1).Value) Then
    Application.Undo
    Target.Offset(0, -1).Select
  End If
End If
Application.EnableEvents = True
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
908
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…