![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Messages: n/a
|
Bonjour à tous
J'ai un petit pb pour écrire une macro excel. Je souhaite: - Regarder dans la cellule A1 de la feuille 2 - Comparer ce qu'il y a dans cette cellule avec ce qui se trouve dans la cellule A1 de la feuille 1 - Ecrire "ok" dans la cellule B1 si il y a la meme chose dans les 2 cellules Je ne veux jamais ecrire quoique ce soit quelque part d'autre. Merci d'avance et bonne semaine à tous Chouchane |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Messages: n/a
|
Salut Chouchane, salut le forum
tu n'as pas précisé dans quelle feuille tu voulais écrire "OK". Je te l'ai mis dans la feuille 1. Modifie la macro si ça va pas... Public Sub ok() If Sheets("Feuil1").Range("A1").Value = _ Sheets("Feuil2").Range("A1").Value Then Sheets("Feuil1").Range("B1").Value = "ok" End If End sub À plus, Robert |
|
|
#3 (permalink) |
|
Messages: n/a
|
Merci beaucoup c super!
J'ai encore une autre question : si je veux par exemple que B2 prenne toujours la valeur B1 meme si je modifie la valeur de B1 apres execution de la macro, que dois-je faire? (Je suppose que dans l'expression : Sheets("Feuil1").Range("B2").Value il faut modifier value par autre chose, mais quoi?) Merci encore Chouchane |
|
|
#5 (permalink) |
|
Messages: n/a
|
Merci d'avoir répondu et aussi vite, mais en fait ce que je veux c'est que B2 prenne sa valeur initiale * B1
On peut faire : Range("B2") = Range("B2") * Range("B1") Le problème c'est que si je mofifie B1 après l'exécution de la macro, B2 ne varie pas... Merci d'avance Chouchane |
|
|
#6 (permalink) |
|
Messages: n/a
|
Re...
Hé oui, directement dans la cellule, tu obtiens une référence circulaire et Excel n’aime pas ça du tout. Il y a la possibilité d’utiliser ton code à chaque changement de la cellule active. Pour cela : Copie le code ci-dessous. Ouvre VBE. Double clique sur la feuille contenant B1 et B2. Clique dans le grand cadre à droite et colle le code. Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("B2") = Range("B2") * Range("B1") End Sub À plus, Robert |
| ANNONCES | |
| Outils de la discussion | |
|
|