Microsoft 365 Problème VBA insertion ligne au-desus

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 !

Mr.Adrien

XLDnaute Nouveau
Bonjour je me permets de venir vers vous pour solliciter votre aide.
J'ai une formule macro pour récupérer des informations sur la feuille "formulaire" et les remplir sur une nouvelle feuille listing "1APG" en cliquant sur validé de la feuille formulaire qui valide la macro.
J’aimerai que l'ajout des lignes se fasse en dessous a et non au-dessus de celle-ci.
Cordialement.
Ps : voici la macro et le fichier Excel
VB:
Sub Macro5()
'
' Macro5 Macro
'

'
    Sheets("1APG").Select
    Range("B5:D5").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Sheets("1APG").Select
    Range("B5").Select
    ActiveCell.FormulaR1C1 = "=Formulaire!R[4]C[1]"
    Range("C5").Select
    ActiveCell.FormulaR1C1 = "=Formulaire!R[4]C[5]"
    Range("D5").Select
    ActiveCell.FormulaR1C1 = "=Formulaire!R[10]C[5]"
    Range("B5:D5").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Formulaire").Select
End Sub
 

Pièces jointes

Bonjour Adrien, et bienvenu sur XLD,
Peut être en plus simple :
VB:
Sub InsereDessous()
    Sheets("1APG").Select
    Application.ScreenUpdating = False
    DL = 1 + Range("B65500").End(xlUp).Row
    Cells(DL, "B").FormulaLocal = "=Formulaire!C9"
    Cells(DL, "C").FormulaLocal = "=Formulaire!H9"
    Cells(DL, "D").FormulaLocal = "=Formulaire!I15"
    Range("B" & DL & ":D" & DL) = Range("B" & DL & ":D" & DL).Value
End Sub
 

Pièces jointes

Bonjour Adrien, et bienvenu sur XLD,
Peut être en plus simple :
VB:
Sub InsereDessous()
    Sheets("1APG").Select
    Application.ScreenUpdating = False
    DL = 1 + Range("B65500").End(xlUp).Row
    Cells(DL, "B").FormulaLocal = "=Formulaire!C9"
    Cells(DL, "C").FormulaLocal = "=Formulaire!H9"
    Cells(DL, "D").FormulaLocal = "=Formulaire!I15"
    Range("B" & DL & ":D" & DL) = Range("B" & DL & ":D" & DL).Value
End Sub
Merci infiniment !!!!!!!!!!
 
- 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
10
Affichages
639
Retour