Incrementer une cellule
Bonjour,
Je voudrais incrementer une cellule depuis une autre cellule.
Quand je tape "Ok" dans la cellule B2, je voudrais que la cellule M2 affiche "1"
J'efface les cellules B2, M2 reste à 1.
Je retape "Ok" dans B2 et je voudrais que M2 affiche "2"
Et ainsi de suite.
Merci de votre aide
Windows / Chrome 107.0.0.0
3 réponses
-
Modérateur
Bonjour,
On peut utiliser une option particulière d'Excel. Supprimer le contrôle d'erreur circulaire (utiliser le champ qui contient la formule dans la formule elle même), contrôle utile pour la majorité des utilisateurs ;-)
Fichier/option/Formule, Activer le calcul itératif, nb max itération 1
Et alors mettre une formule =SI(B2="Ok";M2+1;M2)
Soucis cela fonctionne bien sur la feuille ouverte, mais l'enregistrement et l'ouverture de la feuille active la formule, avec chaque fois +1 quand B2="Ok"On peut alors utiliser une formule alambiquée, en utilisant une partie décimale sur l'accumulateur
=SI(B2="Ok";SI(M2=ENT(M2));M2+1,1;M2);ENT(M2))
et sur M2 mettre un affichage de cellule sans décimale.Il y a peut être plus simple, avec une macro, en utilisant un champ intermédiaire, ...
-
-
Bonjour,
suivant ce que j'ai compris, en VBA
clic droit sur l'onglet de la feuille concerné, colle ce code
Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, [B2]) Is Nothing Then If [B2] = "Ok" Then [M2] = [M2] + 1 End If End Sub