Valeur cellule sous conditions
Résolu
Tuline
Messages postés
60
Statut
Membre
-
Tuline Messages postés 60 Statut Membre -
Tuline Messages postés 60 Statut Membre -
Bonjour,
je suis bloquée sur une macro.
Je vous mets la sheet excel avec la macro ici :
https://www.cjoint.com/c/HCAoy4ScmEF
J'ai écrit dans le fichier les résultats attendus selon la valeur des cases
Merci beaucoup pour votre aide !
Bonne journée
je suis bloquée sur une macro.
Je vous mets la sheet excel avec la macro ici :
https://www.cjoint.com/c/HCAoy4ScmEF
J'ai écrit dans le fichier les résultats attendus selon la valeur des cases
Merci beaucoup pour votre aide !
Bonne journée
4 réponses
-
Bonjour
un peu comme ça ?Option Explicit
'----------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Taille as string, Genre as string, Test As String
Static Flag As Boolean
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("I117,I118,I139")) Is Nothing Then Exit Sub
'vérif si les 3 cellules sont saisies
If Application.CountA(Range("I117,I118,I139")) < 3 Then Exit Sub
If Flag = False Then
Flag = True 'empeche de reparcourir la procédure _
lors de l'affection dans F142, D43 etd
'TON CODE.....
;.....
.......
Flag = False 'libère le blocage pour une nouvelle action
End If
End Sub
-
Comme d'hab, cellules fusionnées en conflit avec Target.count>1!!!
A l"avenir éviter les cellules fusionnées m^me sans VBA
<code> 'If Target.Count > 1 Then Exit Sub SUPPRIME car cellules I à L fusionnées !!! If Intersect(Target, Range("I117,I118,I139")) Is Nothing Then Exit Sub 'nettoyage si cellules I à L vides If Application.CountA(Range("I117,I118,I139")) = 0 Then: Range("D142:D146").ClearContents 'vérif si les 3 cellules sont saisies If Application.CountA(Range("I117,I118,I139")) < 3 Then Exit Sub
-
Bonjour
place
Application.EnableEvents = False ---> en début de macro
et
Application.EnableEvents = True --- avant le END SUB -
Bonjour
quelle(s) cellule(s) déclenchent la macro
par ex : if not intersect(target, range("la zone de déclenchement")) is nothing then.....
actuellement tu déclenches dès que tu effectues une saisie n'importe où dans la feuille . elle se déclenche 2 fois pour rien (I117, I118, I139)
A mon avis, avec plusieurs saisies de départ, worksheet_change ne semble pas adapté