XL 2021 Réaliser une macro pour copier une ligne avec formule ?

  • Initiateur de la discussion Initiateur de la discussion fanou06
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fanou06

XLDnaute Occasionnel
Bonjour,

J'ai créé une macro permettant dans le premier tableau de demiurge d'ajouter des lignes en copiant les formules. Mais j'ai enregistré à partir de la ligne 19.
Cependant si je veux ajouter dans le second tableau (par exemple FDCD qui va de la ligne 50 à 79, je dois réaliser une autre macro ?

Merci.

PS :
macro utilisée :
Touche de raccourci du clavier: Ctrl+d
'
Rows("19:19").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveWindow.SmallScroll ToRight:=3
Range("Q18").Select
ActiveWindow.SmallScroll ToRight:=-3
Rows("18:18").Select
Selection.Copy
Rows("19:19").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("C20").Select
End Sub
 

Pièces jointes

Dernière édition:
Solution
Bonjour @fanou06

Lais j'ai l'impression ca ajoute plusieures lignes sur plusieurs tableaux ?

Remarques:
1) Dans ton fichier il n'y a aucun tableau vu d'excel
2) Ma macro rajoute une ligne toutes les 38 lignes
==> Pourquoi 38 car c'est le nombre de lignes que tu as entre 2 groupes Cordoue à FDCD
Je te conseillerais de mettre le même nombre de ligne entre chaque groupe dans un souci de cohérence
Cordoue ==> FDCD ==> Gap ==> Orbe etc....

Ensuite suivant le nombre de lignes que tu as mis tu adaptes

For i = 18 To DerLig - 25 Step 38 '38 est l'intervalle entre 2 sections à adapter éventuellement
pour que les lignes s'ajoutent partout toutes les X lignes
C'est pourquoi j'ai précisé
Bonjour @fanou06

De ce que j'ai compris je te propose ceci
VB:
Sub Macro1()
Dim DerLig&, i&
DerLig = Range("O" & Rows.Count).End(xlUp).Row

For i = 18 To DerLig - 25 Step 38 '38 est l'intervalle entre 2 sections à adapter éventuellement
    Rows(i & ":" & i).Copy
    Range("A" & i).Insert Shift:=xlDown
    Application.CutCopyMode = False
Next i
Range("C20").Select
End Sub

Merci de ton retour
 
Bonjour @fanou06

Lais j'ai l'impression ca ajoute plusieures lignes sur plusieurs tableaux ?

Remarques:
1) Dans ton fichier il n'y a aucun tableau vu d'excel
2) Ma macro rajoute une ligne toutes les 38 lignes
==> Pourquoi 38 car c'est le nombre de lignes que tu as entre 2 groupes Cordoue à FDCD
Je te conseillerais de mettre le même nombre de ligne entre chaque groupe dans un souci de cohérence
Cordoue ==> FDCD ==> Gap ==> Orbe etc....

Ensuite suivant le nombre de lignes que tu as mis tu adaptes

For i = 18 To DerLig - 25 Step 38 '38 est l'intervalle entre 2 sections à adapter éventuellement
pour que les lignes s'ajoutent partout toutes les X lignes
C'est pourquoi j'ai précisé
'38 est l'intervalle entre 2 sections à adapter éventuellement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
371
Réponses
2
Affichages
308
Réponses
10
Affichages
602
Réponses
1
Affichages
413
Réponses
3
Affichages
686
Réponses
9
Affichages
914
Retour