Forcer saisie cellule

Bonjour,

Je souhaite forcer les utilisateurs à remplir des cellules avec un message leur indiquant la cellule à remplir et que dès qu'ils cliquent sur OK, la cellule active devienne la cellule qui doit être renseignée.

Pouvez-vous m'aider ?

55test.xlsx (10.49 Ko)

Bonjour Ckaufran, bonjour le forum,

Essaie avec la macro événementielle SelectionChange ci-dessous (à placer dans le composant de l'onglet correspondant) :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim PL As Range 'déclare la variable PL (PLage)

Set PL = Application.Union(Range("G2"), Range("I2"), Range("J2"), Range("N2")) 'définit la plage PL
If Application.Intersect(Target, PL) Is Nothing Then Exit Sub 'si le cellule sélectionnée ne fait partie de la plage PL, sort de la procédure
If Range("A2").Value = "" Then 'condition : si A2 est vide
    MsgBox "Vous devez renseigner le numéro !" 'message
    Range("A2").Select 'sélectionne la cellulle A2
End If 'fin de la condition
End Sub

Bonjour,

A mettre dans le module de la feuille :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Intersect(Target, Range("G2,I2,J2,N2")) Is Nothing Then Exit Sub

    If Range("A2").Value = "" Then

        Application.EnableEvents = False
        Range("A2").Select
        Application.EnableEvents = True

        MsgBox "Veuillez remplir la cellule 'A2' en priorité s'il-vous plaît !"

    End If

End Sub

Hervé.

Bonjour le fil, bonjour le forum,

Pas sûr, Hervé, que Application.EnableEvents soit nécessaire. C'est toujours dangereux à utiliser car si ça plante avant d'être remis à True, plus aucune événementielle ne fonctionne.

C'est vrai que Range("A2").Select va relancer l'événementielle SelectionChange, mais la condition IF Intersect... va l'empêcher de poursuivre...

Bonjour à toutes et tous, bonjour ThauThème,

Tu as tout à fait raison mais quand j'ai fais mes premiers tests, j'avais défini la plage de "A2" à "O2" c'est pour éviter la seconde apparition du message que j'ai utilisé "EnableEvents" mais dans le code que j'ai posté effectivement c'est absolument pas nécessaire !

mea-culpa

Hervé.

Bonjour,

Merci pour votre aide

Rechercher des sujets similaires à "forcer saisie"