Validation de cellules

  • Initiateur de la discussion Initiateur de la discussion dturcotte75
  • 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 !

D

dturcotte75

Guest
Bonjour,

Je travaille avec VBA d'Excel et je voudrais valider le contenu de mes cellules, je m'explique.

J'ai 9 colonnes, je voudrais que lorsque la personne entre une valeur dans la colonne 1, immédiatement, en changeant de cellule, ça indique que la valeur doit être numérique et entre 0 et 9. Même chose dans la colonne 2. Dans la colonne 3 c'est entre 0 et 21 et c'est le même principe pour les autres colonnes.

Merci de votre aide !!
 
Re : Validation de cellules

Re-Bonjour,

Essaye avec ce code :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If target.column=1 then
If ActiveCell.value <0 or Activecell.value > 9 then
MsgBox "Valeur incorrect !", vbOKOnly + vbInformation
ActiveCell.value = ""
End if
End if
End sub

à tester évidemment et a répéter pour chaque colonne en changeant les valeurs appropriées...

Blord
 
Re : Validation de cellules

J'ai déjà essayé ce code, mais le SelectionChange et le Change se font lorsque je reviens dans ma cellule et non, lorsque je change de cellule. Ce que je veux dire c'est que je mets dans A1, la valeur "B", je change pour aller dans la cellule B1 et je tappe 4. Lorsque je reviens dans la cellule A1, c'est à ce moment que j'ai mon message d'erreur. Moi, c'est lorsque je quitte pour la première fois ma cellule A1 que je veux que la validation se fasse.

Merci !
 
Re : Validation de cellules

Bonjour,

Ci-joint un fichier dans lequel il faut saisir en A1 un nombre inférieur à 10.

S'il est supérieur, il affiche un message d'anomalie et ramène le curseur sur A1. => impossible de sortir de A1 sans avoir corrigé l'erreur.

S'il est inférieur, il accepte de passer à la zone suivante.

Dans l'objet "Feuil1", j'ai mis :

Code:
Public Nbefois As Integer
Private Sub Worksheet_Activate()
    Nbefois = 0
End Sub
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("A1") > 10 Then
    Nbefois = Nbefois + 1
    If Int(Nbefois / 2) <> Nbefois / 2 Then
        MsgBox "ERREUR : la cellule A1 doit être inférieure à 10"
    End If
 
    Range("A1").Select
    Exit Sub
End If
Nbefois = 0
End Sub
 

Pièces jointes

Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
14
Affichages
332
  • Question Question
Microsoft 365 Fusion de cellules
Réponses
5
Affichages
177
Retour