Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Inserer une ligne

netparty

XLDnaute Occasionnel
Bonjour à tous
Je viens vers vous pour avoir votre aide
J'aimerais dans mon fichier avoir la possibilité d’insérer une ligne et de recopier les formules de la ligne supérieur et ne garder que les formules.

J'ai essayé ce code :

VB:
Sub Inserer_Ligne()
 If MsgBox("Copier la ligne n°" & Target.Row, vbYesNo) = vbYes Then
        Rows(Target.Row).Copy
        Rows(Target.Row).Insert Shift:=xlDown
        Rows(Target.Row).SpecialCells(xlCellTypeConstants, 23).ClearContents
    End If
End Sub

Mais j'ai un messages d'erreur

Merci d'avance pour votre aide
 

Pièces jointes

  • Classeur1.xlsm
    19.7 KB · Affichages: 3

job75

XLDnaute Barbatruc
Bonsoir netparty,
VB:
Sub Inserer_Ligne()
If MsgBox("Copier la ligne n°" & ActiveCell.Row & " ?", vbYesNo) = vbYes Then
    Rows(ActiveCell.Row).Copy
    Rows(ActiveCell.Row).Insert Shift:=xlDown
    Application.CutCopyMode = 0
    On Error Resume Next 'si aucune SpecialCell
    Rows(ActiveCell.Row).SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub
A+
 

netparty

XLDnaute Occasionnel
Bonjour @job75

Merci pour ton code.

Par la même occasion est-il possible d'avoir la possibilité de choisir le nombres de lignes que je voudrais ajouter

Bonne journée
 

job75

XLDnaute Barbatruc
Bonjour netparty, Cousinhub, le forum,
Par la même occasion est-il possible d'avoir la possibilité de choisir le nombres de lignes que je voudrais ajouter
Bien sur :
VB:
Sub Inserer_Ligne()
Dim n
n = Val(Application.InputBox("Nombre de lignes à insérer :"))
If n Then
    On Error Resume Next
    Application.CutCopyMode = 0
    Rows(ActiveCell.Row).Resize(n).Copy
    Rows(ActiveCell.Row).Insert
    Application.CutCopyMode = 0
    Rows(ActiveCell.Row).Resize(n).SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub
A+
 
Dernière édition:

netparty

XLDnaute Occasionnel
Bonjour @job75

J'ai testé le code.
Si je choisi d’insérer une seule ligne cela fonctionne mais si je demande plusieurs lignes alors elle ne sont pas insérées à la bonne place.

Je joint mon fichier pour que tu voie ou celle-ci se sont insérées.

Merci
 

Pièces jointes

  • Classeur1.xlsm
    23.3 KB · Affichages: 4

Discussions similaires

Réponses
1
Affichages
283
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…