Excel Appliquer macro à plusieurs lignes
Sweetpatapouf
-
Gord21 Messages postés 928 Statut Membre -
Gord21 Messages postés 928 Statut Membre -
Bonjour,
Je voudrais appliquer une macro à plusieurs lignes en même temps. Ma macro de base me sert à insérer une ligne en copiant automatiquement des formules dans certaines colonnes (en l'occurence N et G).
ça marche nickel, mais je suis obligée d'inserer les lignes 1 par 1, ce qui peut être un peu long... Comment faire pour que la formule marche sur plusieurs lignes en même temps?
Voilà la macro d'origine:
Dim R As Integer
R = ActiveCell.Row
Rows(R).Select
Selection.Insert Shift:=xlDown
Range("N" & R - 1).Select
Selection.Copy
Range("N" & R).Select
ActiveSheet.Paste
Range("G" & R - 1).Select
Selection.Copy
Range("G" & R).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Je remercie d'avance qui pourra m'aider sur ce coup là....
Je voudrais appliquer une macro à plusieurs lignes en même temps. Ma macro de base me sert à insérer une ligne en copiant automatiquement des formules dans certaines colonnes (en l'occurence N et G).
ça marche nickel, mais je suis obligée d'inserer les lignes 1 par 1, ce qui peut être un peu long... Comment faire pour que la formule marche sur plusieurs lignes en même temps?
Voilà la macro d'origine:
Dim R As Integer
R = ActiveCell.Row
Rows(R).Select
Selection.Insert Shift:=xlDown
Range("N" & R - 1).Select
Selection.Copy
Range("N" & R).Select
ActiveSheet.Paste
Range("G" & R - 1).Select
Selection.Copy
Range("G" & R).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Je remercie d'avance qui pourra m'aider sur ce coup là....
A voir également:
- Excel Appliquer macro à plusieurs lignes
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Application word et excel gratuit - Guide
- Écrire plusieurs lignes dans une cellule excel mac - Guide
1 réponse
Bonsoir,
Une façon de le faire serait de faire une boucle :
nb_fois étant le nombre de fois que tu veux copier tes lignes, tu le passe en paramètre de ta procédure. Sinon, si tu veux toujours ajouter 3 lignes par exemple, il est possible de modifier le code pour éviter ce type de boucle.
@+
Une façon de le faire serait de faire une boucle :
R = ActiveCell.Row
For i = 0 To (nb_fois - 1)
Rows(R).Select
Selection.Insert Shift:=xlDown
Range("N" & R - 1).Select
Selection.Copy
Range("N" & R).Select
ActiveSheet.Paste
Range("G" & R - 1).Select
Selection.Copy
Range("G" & R).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Next i
nb_fois étant le nombre de fois que tu veux copier tes lignes, tu le passe en paramètre de ta procédure. Sinon, si tu veux toujours ajouter 3 lignes par exemple, il est possible de modifier le code pour éviter ce type de boucle.
@+