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

Copy insert changeant

  • Initiateur de la discussion Initiateur de la discussion yadla
  • 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 !

yadla

XLDnaute Occasionnel
Bonjour,

Je ne comprends pas, j'ai le code suivant :
Code:
.Rows(i + 1).Select
Selection.Copy
If nb_fois > 1 Then
    .Rows(i + 1 & ":" & i + nb_fois - 1).Select
End If
Selection.Insert Shift:=xlDown

Des fois j'ai bien la ligne copiée qui s'insère, des fois, j'ai uniquement des lignes vides... 😕😕

En fait, ce que je veux faire, c'est insérer x fois (x=nb_fois) la ligne copiée (elle contient des formules, une mise en forme particulière...).

Je ne comprends pas pourquoi des fois ca marche, et des fois ca ne marche pas... Et à chaque fois que je lance le programme c'est au meme endroit que ca ne marche pas... 😕😕

Quelqu'un a une idée ?

Merci d'avance !
 
Re : Copy insert changeant

Je viens de trouver, Excel ne prends pas en compte à partir de 50 lignes à insérer.

Si j'ai 49 lignes c'est toujours OK, mais dès 50, la selection est trop longue.

Peut etre que ca servira à d'autres...

Si jamais vous connaissez un moyen de détourner la chose, pour pouvoir le faire quand meme, MERCI ! 🙂
 
Re : Copy insert changeant


Bonjour yadla,

N'ayant pas l'intégralité de ton code sous les yeux, je peux me tromper mais voici mon avis :

Je pense que ça ne marche pas à chaque fois que nb est > à 1, pour la simple raison que si cette condition est remplie, tu sélectionnes une autre ligne. Donc, ta précédente sélection est effacée.

Espérant avoir compris.

Cordialement.
 
Re : Copy insert changeant

Bonjour yadla, Papou-net 🙂,
Peut être une solution de contournement (insertion d'une seule ligne donc on peut répéter l'opération plus de 50 fois), mais il faut voir à l'utilisation si ce n'est pas trop long:
Code:
Sub test()
Application.ScreenUpdating = False
i = 50
nb_fois = 5
If nb_fois > 1 Then
    For k = 1 To nb_fois - 1
        Rows(i + 1).Copy
        Rows(i + 1).Insert Shift:=xlDown
    Next k
End If
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
Cordialement
 
- 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
23
Affichages
665
Réponses
5
Affichages
909
  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
520
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…