Copier une colonne sur deux
Par formule, écris ceci en A1 de la feuille 2 puis tire la formule vers la droite (et vers le bas si besoin bien sur)
=DECALER(Feuil2!$A1;0;COLONNE()*2-2)
Ne pas oublier le $ devant le A pour figer la colonne dans la référence initiale, mais ne pas figer le N° de ligne pour qu'il s'adapte quand on tire vers le bas.
La ruse tient dans le 3° paramètre de la formule :
colonne() renvoie le numéro de la colonne de la cellule contenant la formule. Par exemple 5 pour la colonne E
Donc colonne()*2-2 renvoie (5*2)-2=8 qui correspond au n° de la colonne H
Donc la formule renvoie la valeur de la cellule qui est située 8 colonnes à droite de la cellule de référence.
Par macro
Tu peux jouer sur le reste de la division par 2 du N° de la colonne:
soit C ce numéro si C Mod 2 =1, autrement dit si le reste de la division de C par deux est 1 alors la colonne est impaire, sinon (C Mod 2 = 0) il est pair.
En fonction de ce que tu veux (copier les colonnes paires ou impaires), tu adaptes la macros ci-dessous.
Tu peux bien sur adapter pour copier une colonne sur 3 ou sur 17.
Tu peux aussi modifier la ligne
C.Copy Worksheets("Feuil4").Cells(1, A) pour choisir où copier tes données.
Sub copiemodulo()
Dim C As Range, A As Long
For Each C In Worksheets("Feuil1").Range("A1:AV275").Columns 'a adapter bien sur
If C.Column Mod 2 = 1 Then
A = A + 1
C.Copy Worksheets("Feuil4").Cells(1, A)
End If
Next
End Sub
Auteur : Flo Cabon
Mot clef associé à cette page : colonne
- Vous devez vous identifier ou créer un compte pour écrire des commentaires
