Création
d'entreprise
Posez votre question Signaler

Repeter une macro x fois

Pierre l'encreur - Dernière réponse le 28 juil. 2009 à 16:19
Bonjour,
J'aimerais transposer 2200 ligne d'une feuille excel... Pour cela je me suis dit qu'une macro serait l'idéal, mais j'y connais rien (pire qu'un noob!).
J'ai réussi à faire une macro pour transposer ma 1ere ligne et transposer ma seconde ligne à la suite. Problème, cela doit ce faire manuellement.
Est-ce que quelqun aurait la clé pour pouvoir automatiser le truc.
Merci beaucoup.
Voici la macro en question générée par enregistrement:
Sub Macro19()
'
' Macro19 Macro
'
'
Sheets("Feuil1").Select
ActiveCell.Offset(1, 0).Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Sheets("Feuil3").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End Sub
Lire la suite 

Repeter une macro x fois »

4 réponses
Réponse
+0
moins plus
Bonjour,

Moi aussi je débute alors je ne sais pas si ça va t'aider (vive la solidarité entre débutant !!)
Mais l'idée c'est que tu répètes la même opération pour chaque ligne.
Donc tu crées un compteur i qui représente le n° de la ligne, tu l'initialises à 1, et tu fais une boucle FOR du type

FOR i = 1 to 2000

ton opération

i = i +1 (comme ça tu passes à la ligne suivante)

FIN BOUCLE FOR (euh, je sais plus la syntaxe :p)

Tu dois même pouvoir faire un truc genre WHILE (ligne non vide) faire l'opération, ligne suivante END LOOP

Bon courage !
Pierre l'encreur - 28 juil. 2009 à 15:20
Merci pour ta réponse si rapide, malheureusement je suis tellement débutant (ce matin...) que je n'arrive pas à faire en sorte que ça marche.
Ajouter un commentaire
Réponse
+0
moins plus
bonjur..

FOR i = 1 to 2000 'ok

ton opération 'j suis d accord

i = i +1 (comme ça tu passes à la ligne suivante) 'ah ben non, si c'est un for c'a s incremente tout seul.. tu confond avec un while/wend

FIN BOUCLE FOR (euh, je sais plus la syntaxe :p)=> la solution ::: ) next


=>

for i=1 to 2000
'ici ton code
next

ou

i=1
while i<2000
'ici ton code
i=i+1 ' c'est là :)
wend
Pierre l'encreur - 28 juil. 2009 à 16:19
Merci de m'avoir aidé. Un collègue à finalement réussi à y arriver grâce à une formule alambiquée.

Je vous fait tout de même part du problème que j'ai eu:

en lançant le programme suivant:

for i=1 to 2000
'ici mon code
next

Excel ne m'affichait que des blancs alors que je le voyais faire l'opération demandée sur toute la ligne...

En tout cas, merci encore de m'avoir aidé.
Ajouter un commentaire
Ce document intitulé « Repeter une macro x fois » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?