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

insertion automatique de ligne dans une liste

  • Initiateur de la discussion Pierre Legrand
  • Date de début
P

Pierre Legrand

Guest
Bonjou, une petite question de débutant :

j'ai une liste d'OP comptable sous la forme : date,libelle,montant (format excel xp)

Je souhaite pouvoir entre toutes les lignes insérer 2 autres lignes sur le meme format (meme contenus pour toute la page.

C'est trés facile en manuel, mais est t'il possible de l'automatiser sur la liste entiére (2000/3000 lignes) ?

merci de votre réponse
 
M

Mytå

Guest
Bonsoir le forum

Peut-etre que ceci pourrait t'aider Pierre

Option Explicit
Sub ajouter_lignes()
Dim ligne As Integer
For ligne = Range("A65535").End(xlUp).Row To 3 Step -1
With Rows(ligne & ":" & ligne)
.Insert Shift:=xlDown
.Insert Shift:=xlDown
End With
Rows(ligne - 1 & ":" & ligne - 1).Copy
Rows(ligne & ":" & ligne + 1).PasteSpecial Paste:=xlFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Next ligne

End Sub

Mytå
 
Z

Zon

Guest
Bonsoir à tous,

Je pense qu'il y a plusieurs solutions, mais j'ai trouvé celle là la plus simple:
On copie la plage A1:E1 puis insére deux à deux les les cellules copiées où l'on efface les valeurs avec clearcontents


Sub inserligne()
Dim L As Integer
L = Sheets("Feuil1").Range("A65536").End(xlUp).Row
For i = L To 1 Step -1
Range("A1", "E1").copy
Range("A" & i, "E" & i).insert xldown
Range("A" & i, "E" & i).clearcontents
Range("A" & i, "E" & i).insert xldown
Range("A" & i, "E" & i).clearcontents
Next i
application.cutcopymode=false
End Sub


A+++
 
M

Mytå

Guest
re le forum

Un autre facon de voir c'est bien Zon

Je remplacerais par contre
.....
Range("A" & i, "E" & i).clearcontents
Next i
application.cutcopymode=false
End Sub

par
......
Range("A" & i, "E" & i).clearcontents
application.cutcopymode=false
Next i
End Sub

Et tu Dim L as Integer mais ta oublier pour le i

A+ Mytå
 
Z

Zon

Guest
Re,


Mytâ, je vois que tu appliques les conseils de Thierry à la lettre:

Effectivement j'ai oublié une déclaration de i (je n'ai pas d'option Explicit...)et de vider le pressepapier dans ma boucle.

Enfin tu peux remplacer
Rows(ligne & ":" & ligne + 1).PasteSpecial Paste:=xlFormats Operation:=xlNone, SkipBlanks:=False, Transpose:=False

par

Rows(ligne & ":" & ligne + 1).PasteSpecial xlFormats



A+++
 
P

Pierre Legrand

Guest
merci, les 2 formules fonctionnent pour insérer 2 lignes.

Mais comment faire pour que mes 2 lignes insérés ne soient pas vierges, mais reprenne le contenu du presse papier (ou de 2 lignes spécifiques) ?

d'avance merci de vos réponses
 
A

A. HAMICI

Guest
Bonjour Naima

Je ne voudrai pas repondre a quoique se soit,mais je desire vivement faire votre connaissance, du fait qu'on a le meme nom de famille.
Je veux connaitre ma famille.
Je suis de Guelma, et c'est plein de Hamici la bas,notre origine est de JIJEL
d'apres l'histoir.
En fin bref, repondez moi on en discutera bien
Merci de votre comprehension
Salutations.
Abdelhalim HAMICI
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…