Copier coller ensemble cellules paires vers colonne adjacente. [Résolu/Fermé]

Signaler
Messages postés
1
Date d'inscription
jeudi 19 mai 2016
Statut
Membre
Dernière intervention
19 mai 2016
-
 bo456 -
Bonjour à tous,

Je cherche à copier toutes les cellules ayant un numéro de ligne paire d'une colonne pour les coller vers la colonne adjacente en appliquant un retrait de 1 cellule vers le haut via VBA sous excel 2013.

Concrètement mon tableau est le suivant :

... C D E
1 ...x y z
2 .... n
3 ...x y z
4 .... n
5 ...x y z
6 .... n
7 ...x y z
8 .... n

Tous les x et les z ont été fusionnés, et j'aimerai mettre les n dans une nouvelle colonne entre D et E pour arriver à ce résultat :

... C D E F
1 ...x y n z
2 ....
3 ...x y n z
4 ....
5 ...x y n z
6 ....
7 ...x y n z
8 ....


Le code que j'ai trouvé me permet de sélectionner et copier les n mais en collant manuellement tous mes n sont resserrés d'un bloc :

Sub copiercol()

Dim i As Long
Dim rng As Range
'
'
'Mettre les valeurs correctes de iMin et iMax
'
Const iMin As Long = 4
Const iMax As Long = 378


Set rng = Range("D" & iMin & ":" & "D" & iMin)

For i = iMin + 2 To iMax Step 2
Set rng = Union(rng, Range("D" & i & ":" & "D" & i))

selection.Copy

Next i

rng.Select



End Sub

Cordialement,


2 réponses

Messages postés
2124
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
7 septembre 2020
281
Bonjour
Pas sûr d'avoir tout compris si au départ, "xyz" sont dans des cellules séparées ou dans une seule cellule et qu'en sortie tout doit être fusionné en une seule cellule.
J'ai compris ceci

Sub Copier()
    Application.ScreenUpdating = False
    For i = 2 To [D10000].End(xlUp).Row Step 2
        If i = "" Then Exit Sub
        Cells(i - 1, 6) = Cells(i - 1, "C") & Cells(i - 1, "D") & Cells(i, "D") & Cells(i - 1, "E")
    Next i
End Sub

A tester
Cdlt
Parfait merci frenchie83, j'ai un peu changé cette partie pour que ça corresponde à ce dont j'ai besoin :
Cells(i - 1, 5) = Cells(i, "D").Bonne journée

Bonjour bo456,

Peut-être que je me trompe, mais j'ai compris l'énoncé de ton problème
d'une façon différente de celle de Frenchie83 (que je salue en passant).

Aussi, je te propose la solution suivante :
Fichier Excel 2003 : Exercice Vers colonne adjacente

Je compte sur toi pour me dire ce que tu en penses.
Cordialement.  😊