Microsoft 365 Réorganiser les colonnes de plusieurs fichiers automatiquement par VBA

AUREL87

XLDnaute Nouveau
Bonjour à tous,

J'ai besoin de vous pour trouver une solution afin de réorganiser des colonnes de plusieurs fichiers.

Je possède x fichiers dont les titres et le nombre des colonnes (en ligne 1) ne sont pas identiques pour tous les fichiers.
J'aimerais pouvoir appliquer un traitement afin de remettre les colonnes des fichiers dans le même ordre.

Je pensais appliquer la démarche suivante :
1) Ouvrir tous les fichiers (dans un même dossier) et récupérer le titre des colonnes de tous les fichiers afin d'avoir l'exhaustivité des noms de colonnes de tous les fichiers.
2) Récupérer cette liste sur une feuille du fichier principal (où se situe la macro) dans la colonne A. Puis indiquer dans la colonne B, l'ordre des colonnes voulues manuellement.
=> Jusque là, je vais trouver une solution.

Par contre, je ne vois pas comment réorganiser les colonnes selon l'ordre établit manuellement en étape 2 ...

Avez-vous quelques idées ou exemple ?

Je vous remercie par avance.
AUREL87
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @AUREL87 :),

Il manque un fichier exemple. Donc j'en ai fait un :confused:.
Le code est dans le module de la feuille Feuil1.
VB:
Sub Reorganiser()
Dim t, i&, n1&, n2&
   Application.ScreenUpdating = False
   t = Range("a1").CurrentRegion: n2 = [f1].Column
   For i = UBound(t) To 2 Step -1
      n1 = Application.Match(t(i, 2), Range("f1").Resize(, UBound(t)), 0) + [f1].Column - 1
      If n1 <> n2 Then Columns(n1).Cut: Columns(n2).Insert
   Next i
End Sub

edit 1 : ajouté la condition If n1 <> n2 Then
edit 2 : ajouté un bouton mélange
 

Pièces jointes

  • AUREL87- Tableau réorganiser colonnes - v1.xlsm
    19.2 KB · Affichages: 7
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren