Copier/coller une ligne sur deux pour une colonne

Bonjour à tous,

J'utilise régulièrement excel dans ma vie professionnel comme personnel.

J'essaye toujours de trouver une façon d'aller plus vite afin de gagner du temps.

Chaque mois je dois copier et coller une ligne sur deux d'une colonne, je m'explique :

ligne 1 colonne A, j'ai Madame X

ligne 2 colonne A, je n'ai rien (mais je voudrais Madame X)

ligne 3 colonne A, j'ai Monsieur Z

ligne 4 colonne A, je n'ai rien (mais je voudrais Monsieur Z)

Ainsi de suite, chaque mois les noms change et je dois faire un copier coller.

J'aimerais faire une macro qui copie une ligne sur deux pour éviter le Ctrl+C et Ctrl+V très long quand on à plus de 1000 lignes.

Pour le moment j'ai fais la formule suivante :

Sub CopieAvecTrous ()

Ecart = 2

ActiveCell.Copy

ActiveCell.Offset(0, Ecart).Select

While UCase(ActiveCell.Value) <> "FIN"

ActiveSheet.Paste

ActiveCell.Offset(0, Ecart).Select

Wend

End Sub

Mais le copier coller ne se fait que sur ligne, alors que je le voudrais en colonne.

Pouvez-vous m'aider ? Merci d'avance pour votre aide.

Bonjour,

à adapter à votre feuille cette macro : ( pas besoin de copier coller en vba ; la valeur de la cellule vide = valeur de la cellule précédente )

Sub Macro1()
'
' Macro1 Macro
'
Dim DERLIGNE As Long
Dim i As Integer
DERLIGNE = Range("A65536").End(xlUp).Row + 1

For i = 2 To DERLIGNE  '  modifier i point de départ en fonction de votre tableau si entête ou pas ? 
If Worksheets("Feuil1").Cells(i, 1).Value = "" Then
Worksheets("Feuil1").Cells(i, 1).Value = Worksheets("Feuil1").Cells(i - 1, 1).Value
End If

Next '
End Sub

merci beaucoup pour la macro, je n'ai pas d'entête.

Pour le moment j'ai le message : "erreur d'exécution "9" "

Je ne sais pas se qu'il faudrait que je modifie

Bonjour lagarde, Xmenpl, le forum,

j'ai le message : "erreur d'exécution "9" "

La macro agit sur la feuille "Feuil1", porte-t-elle ce nom ? Si non, modifie le nom dans la macro,

Cordialement,

merci beaucoup pour la macro, je n'ai pas d'entête.

Pour le moment j'ai le message : "erreur d'exécution "9" "

Je ne sais pas se qu'il faudrait que je modifie

Excel souligne une ligne en particulier ?

Vous avez bien changer le nom de la feuil1 si la votre ne porte pas ce nom ?

Si pas d'entête alors : For i = 1 To DERLIGNE

Oops xorsankukai plus rapide bonjour XOR.

Solution ultime vous copiez vos données dans la feuille1 de mon fichier test et vous lancer la macro pour voir si toujours erreur 9 ?

Et vérifier si votre page n'a pas de cellules fusionnées.

Xmenpl,

Ton fichier exemple fonctionne super bien, mais dès que j'essaye sur le mien rien de se passe, j'avais effectivement le mauvais nom de feuille, j'ai changer, mais plus rien ne se passe maintenant.

Quand j'ouvre ta macro en exemple, deux feuilles s'ouvre une worsheet et une général, est-ce pour ça que mon fichier ne fonctionne pas ?

Xmenpl,

Ton fichier exemple fonctionne super bien, mais dès que j'essaye sur le mien rien de se passe, j'avais effectivement le mauvais nom de feuille, j'ai changer, mais plus rien ne se passe maintenant.

Quand j'ouvre ta macro en exemple, deux feuilles s'ouvre une worsheet et une général, est-ce pour ça que mon fichier ne fonctionne pas ?

On va faire dans l'ordre.

1) Ton fichier doit être enregistré sous et tu dois indiquer le format qui prend en charge les macros. enregistrer sous …...xlsm

2) Dans l'onglet développeur tu clic sur enregistrer une macro puis tu l'arrêtes immédiatement.

3) Tu utilises les touche ALT et F11 pour ouvrir visual basic et dans Module 1 tu devrais retrouver ta macro précédemment enregistrée vide.

4) Tu viens copier coller le code si après dans ta macro … EN REMPLACANT par le bon nom de feuille.

Dim DERLIGNE As Long
Dim i As Integer
DERLIGNE = Range("A65536").End(xlUp).Row + 1

For i = 2 To DERLIGNE  '  modifier i point de départ en fonction de votre tableau si entête ou pas ? 
If Worksheets("Feuil1").Cells(i, 1).Value = "" Then
Worksheets("Feuil1").Cells(i, 1).Value = Worksheets("Feuil1").Cells(i - 1, 1).Value
End If

Next '

5) Enregistrer les modifications puis retourner dans l'onglet développeur cliquer sur maco et lancer la macro correspondante.

OOps petite précision quand tu lances la macro tu es bien sur l'onglet souhaité ou sur un autre onglet ? Dans le cas ou tu lances à partir d'un

autre onglet il faudra modifier le code.

Sinon au pire comme je l'ai précédemment indiqué essaies avec un copié collé de tes infos dans mon fichier ; on pourra alors vérifier si cela ne fonctionne pas

alors il y a peut-être des caractères invisibles ou des espaces dans les cellules qui semblent vides ?

Rechercher des sujets similaires à "copier coller ligne deux colonne"