2013-10-09 4 views
-1

J'utilise MS Excel 2010 veulent quoi changer un nombre de cellules si une valeur est vraie, par ex. a2 =2, b2=1, c2=$30, d2=10excel si vrai, puis a et b et c

A  B  C  D 
1 Prz  Stat Val  Pts 
2 2  1  $30  10 

Comment puis-je effectuer les opérations suivantes dans Excel IF B2=1 THEN A2+1 AND C2+30 AND D2+5 afin que les cellules ci-dessus sont modifiées pour: -

A  B  C  D 
1 Prz  Stat Val  Pts 
2 3  1  $60  15 

par exemple a2=3, c2=60, d2=15

+0

Y a-t-il une "valeur initiale" pour les cellules "A2", "C2" et "D2"? Vous devriez avoir une formule pour chaque cellule. Par exemple, 'A2' aurait' = (initial) + B2' et 'C2' aurait' = (initial) + 30 * B2', etc. C'est-à-dire qu'il y a une condition de départ des cellules de la feuille de calcul, alors il y a un "événement" qui les change (l'évènement étant: "B2" change). Mais ce n'est pas clair pour moi si c'est ce que vous recherchez. – lurker

Répondre

0

Sélectionnez d'abord la feuille contenant les données et exécuter cette simple macro:

Sub TestAndBump() 
    If [B2] = 1 Then 
     [A2] = [A2] + 1 
     [C2] = [C2] + 30 
     [D2] = [D2] + 5 
    End If 
End Sub 
+0

Gary/Agv, La macro TestandBump fonctionne pour B2, c'est-à-dire qu'elle modifie les valeurs dans A2, C2 et D2. Je voudrais que la macro vérifie les cellules B2 jusqu'à B50 et change les cellules A2: A50, C2: C50 et D2: D50 en conséquence. J'ai essayé d'activer "Utiliser les références relatives", mais cela n'a pas fonctionné. J'ai également essayé d'utiliser des références de cellules absolues dans la macro mais cela n'a pas fonctionné. Qu'est-ce que je fais mal? Comment puis-je joindre un fichier d'exemple à un commentaire pour illustrer ce que j'essaie de réaliser? – user2863570

0

Grâce à la solution des étudiants de Gary ci-dessus, vous pouvez aussi mettre la macro sur un événement de changement de feuille de calcul:

Mettez le code dans la feuille de calcul qui contient vos données.
Private Sub Worksheet_Change(ByVal Target As Range) 
    If [B2] = 1 Then 
     [A2] = [A2] + 1 
     [C2] = [C2] + 30 
     [D2] = [D2] + 5 
    End If 
End Sub 

En faisant cela, vous n'avez pas besoin d'exécuter la macro chaque fois que vous changez un nombre.

Questions connexes