Déplacement de plusieurs colonnes
Pévénéro
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche, dans un language visual basic pour excel, déplacer (si possible en évitant les cellules vides) le contenu de 9 colonnes non adajacentes d'une feuille 1 dans une autre feuille 2 tout à la suite dans une seule colonne.
Pouvez-vous m'aider s'il vous plait.
Je cherche, dans un language visual basic pour excel, déplacer (si possible en évitant les cellules vides) le contenu de 9 colonnes non adajacentes d'une feuille 1 dans une autre feuille 2 tout à la suite dans une seule colonne.
Pouvez-vous m'aider s'il vous plait.
2 réponses
-
Bonjour,
Si tu tiens absolument à du VBA:
macro à adapter à ta configuration
Option Explicit Sub regrouper_en1col() Dim cptr As Byte, nbre As Byte, col As String Dim derlig1 As Integer, derlig2 As Long Dim plage As Range nbre = 3 'nombre de colonnes à transférer Application.ScreenUpdating = False Sheets(2).Columns("A").ClearContents For cptr = 1 To nbre col = Choose(cptr, "B", "D", "E") 'colonnes à transférer With Sheets(1) derlig1 = .Cells(10000, col).End(xlUp).Row Set plage = .Range(.Cells(1, col), .Cells(derlig1, col)) End With With Sheets(2) derlig2 = .Cells(10000, "A").End(xlUp).Row + 1 .Range(.Cells(derlig2, "A"), .Cells(derlig1 + derlig2 - 1, "A")) = plage.Value End With plage.Clear Next With Sheets(2) 'supprime les cellules vides derlig2 = .Cells(10000, "A").End(xlUp).Row Range("A1:A" & derlig2).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End With End Sub
Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp) -
Clique droit sur l'onglet du classeur, déplacer ou copier, cocher creer une copie.
ou tu selectionne tes colonnes en maintenant la touche ctrl enfoncé tu fais copier et tu colle autre part...