VBA - Duplication d'une valeur toute les n ligne en une colonne

Bonjour bonjour,

Désolé d'avance si le titre de mon sujet n'est pas extrêmement clair.

Je travaille actuellement sur une colonne A comprenant n lignes (disons 200 ligne par exemple).

Mon objectif est de récupérer la valeur de cette cette colonne toutes les 8 lignes, puis de la coller dans la colonne B.

Etant vraiment débutant sur VBA (mais ayant quelques notions de code) j'ai procédé en deux temps :

- Injecté dans la cellule C1 le nombre de valeur de ma colonne A

(=NBVAL(A:A))

- Bouclé sur cette valeur pour copier et coller ma donnée :

 Sub copiecolleligne_()
nbval = Range("C1").Value
For i = 1 To nbval
    Cells(i, 1).Copy
    Cells(i, 2).PasteSpecial Paste:=xlValue
    i = i + 7
Next
End Sub 

Problème : je ne souhaite pas appliquer le saut de 7 lignes lorsque je colle les données : ainsi ma colonne B sera uniquement remplie des valeurs 1;8;16...etc mais sans saut de ligne entre ces valeurs.

J'ai donc essayé :

Sub copiecolleligne_()
nbval = Range("C1").Value
For i = 1 To nbval
    Cells(i, 1).Copy
    Cells(i-7, 2).PasteSpecial Paste:=xlValue
    i = i + 7
Next
End Sub

Sans grands résultats ....

Merci d'avance pour vos lumières !

bonjour

sans VBA bien entendu

4classeur1.xlsx (11.16 Ko)

Merci pour ta réponse !

Je n'avais pas du tout pensé au décaler qui fonctionne parfaitement bien pour le coup

Par contre j'ai tout de même trouvé un moyen de le faire via une macro pour automatiser en double bouclant :

Sub copiecolleligne_()

nbval = Range("C1").Value
Dim j As Integer
j = 1
For i = 1 To nbval

  Cells(i, 1).Copy
  Cells(j, 2).PasteSpecial Paste:=xlValue
  i = i + 7
  j = j + 1
Next
End Sub

Encore merci a toi !

jmd a écrit :

sans VBA bien entendu

Lulu a écrit :

Par contre j'ai tout de même trouvé un moyen de le faire via une macro

pauv' jmd ! même quand il propose une solution sans VBA, c'est l'demandeur lui-même qui fait avec VBA !

c'est pas d'chance, hein, jmd ? (j'crois que VBA est un virus trop tenace ! )

dhany

Hello dhany !

[/quote]

pauv' jmd ! même quand il propose une solution sans VBA, c'est l'demandeur lui-même qui fait avec VBA !

c'est pas d'chance, hein, jmd ? (j'crois que VBA est un virus trop tenace ! )

dhany

[/quote]

Ahahah, c'est n'est pas par pure masochisme sur VBA : l'opération finale s'applique sur 30 lignes (donc 30 colonnes créées) et est répétée quotidiennement d'ou l'avantage d'avoir un fichier template avec un gros bouton

Mais j'ai appris un beau truc sur le décaler qui, j'en suis sur, finira par m'être utilie !

Bonjour,

Une autre proposition à la Kiri.

Cdlt.

0lulududu.xlsx (25.76 Ko)
Rechercher des sujets similaires à "vba duplication valeur toute ligne colonne"