kalverwolf
Messages postés6Date d'inscriptionmercredi 26 mai 2010StatutMembreDernière intervention31 mai 2010
-
31 mai 2010 à 09:55
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
31 mai 2010 à 15:47
Bonjour à toutes et à tous !
Je vous écris car j'avais essayer de creer par moi meme une maccro me permettant de mener à bien mon projet, mais cela est trop compliqué..
Du coup, je souhaiterai faire un enregistrement des étapes que j'ai à faire, afin de créer la macro. Seulement, mon projet et de faire une chose (copier de lignes), si et seulement si, des éléments sur deux feuilles excel sont strictement équivalent(ce serait une comparaison de chaine de caractère).
On m'a dit que cela était possible, mais je ne vois pas d'insertion de condition, seulmeent le bouton dans la barre d'outils, enregistrement, et après je ne vois donc pas comment faire comprendre au logiciel, que j'aimerai qu'il compare telles et telles cellules, ppur ensuite faire telles ou telles actions...
MErci d'avance, dites moi si je ne suis pas assez clair, car j'avoue qu'il me semble que cela est un peu confus.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 31 mai 2010 à 10:25
Salut
En effet, l'enregistreur de macro ne saura te fournir que le code équivalent aux actions que tu vas faire.
Pour avancer, regarde parmi les questions du forum, par exemple en recherchant "comparer deux feuilles", tu verras ainsi comment les autres ont résolu ce problème.
Alors, c'est sûr, tu ne vas pas trouver exactement la réponse de ce que tu cherches à faire, mais au moins, tu vas trouver des bouts de code que tu pourras tester.
Le forum n'est pas qu'un endroit où poser des questions, c'est aussi là que se trouvent les réponses.
Pour pouvoir comparer deux choses, il faut pouvoir isoler ces choses, une à une.
Exemple de scrutation de chaque cellule dans Range :
Dim maCellule As Range
Debug.Print "Ligne", "Colonne", "Valeur"
For Each maCellule In Range("A1:B12")
Debug.Print maCellule.Row, maCellule.Column, maCellule.Value
Next
Regarde dans la fenêtre de debug (Ctrl-G) et tu comprendras à quoi sert ce code
Etape suivante : T'adresser à un Range en précisant le nom de la feuille :
Sheets("ma feuille").Range(...
Et finalement : Faire une condition
Voir l'instruction If-Then-Else-End If dans l'aide
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
kalverwolf
Messages postés6Date d'inscriptionmercredi 26 mai 2010StatutMembreDernière intervention31 mai 2010 31 mai 2010 à 10:35
Ok, je comprends ce que tu veux dire.
Mais bon, là c'est vrai que j'aurai voulu savoir si quelqu'un connaissait ce système (enregistrer une macro, avec une possibilité d'insertion de condition).
Je vais voir ce que je peux faire, et jreviendrai peut-etre vous redemander quelque chose si j'ai des éléments plus précis où je bloque.