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
313 276
Messages
2 096 760
Membres
106 743
dernier inscrit
sshkm16