VBA - Réorganiser des colonnes
Jauster
Messages postés
142
Statut
Membre
-
Jauster Messages postés 142 Statut Membre -
Jauster Messages postés 142 Statut Membre -
Bonjour le forum,
Je cherche une macro pour réorganiser des colonnes selon un ordre que j'ai fixé. Mon fichier étant assez lourd avec pas mal de macros, je souhaite éviter d'utiliser le presse papier Excel avec cut/insert et de rallonger la durée d’exécution de ma macro.
Avec vous une piste de macro que je pourrais ensuite adapter à mon fichier ?
Quelques informations supplémentaires sur le fichier :
- Les colonnes ont des Headers, mais ces derniers ne sont pas définitifs et seront amenés à changer au cours de la macro.
- Voilà pour le moment à quoi ressemble la partie que je souhaite optimiser :
- wsMAJ correspond à ma feuille.
Si besoin, je pourrais uploader un fichier exemple, mais je ne pense pas qu'il soit utile pour ce cas, je saurais adapter la macro à mon fichier.
Merci d'avance pour votre aide,
J.
PS: Ici il n'y a que 2 colonnes à bouger, mais dans le futur, il y aura éventuellement plusieurs dizaine de colonne à déplacer
Je cherche une macro pour réorganiser des colonnes selon un ordre que j'ai fixé. Mon fichier étant assez lourd avec pas mal de macros, je souhaite éviter d'utiliser le presse papier Excel avec cut/insert et de rallonger la durée d’exécution de ma macro.
Avec vous une piste de macro que je pourrais ensuite adapter à mon fichier ?
Quelques informations supplémentaires sur le fichier :
- Les colonnes ont des Headers, mais ces derniers ne sont pas définitifs et seront amenés à changer au cours de la macro.
- Voilà pour le moment à quoi ressemble la partie que je souhaite optimiser :
'With wsMAJ
'' .Columns("D:D").NumberFormat = "0"
'' .Columns("F:F").Cut
'' .Columns("A:A").Insert Shift:=xlToRight
'' .Columns("D:D").Cut
'' .Columns("B:B").Insert Shift:=xlToRight
'' .Columns("A:G").EntireColumn.AutoFit
'End With
- wsMAJ correspond à ma feuille.
Si besoin, je pourrais uploader un fichier exemple, mais je ne pense pas qu'il soit utile pour ce cas, je saurais adapter la macro à mon fichier.
Merci d'avance pour votre aide,
J.
PS: Ici il n'y a que 2 colonnes à bouger, mais dans le futur, il y aura éventuellement plusieurs dizaine de colonne à déplacer
A voir également:
- VBA - Réorganiser des colonnes
- Comment faire des colonnes sur word - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Reorganiser icones iphone - Guide
- Déplacer des colonnes excel - Guide
- Dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. - Guide
1 réponse
Bonjour,
pas beaucoup d'autre possibilité que de couper-coller pour ordonner des colonnes.
Ajouter Application.ScreenUpdating = False au début, et mettre le calcul en manuel s'il y a des formules, à rétablir à la fin.
Une autre quand même :
- insérer une ligne en haut et numéroter l'ordre voulu.
- copier-collage spécial 'transposer' ailleurs
- trier sur colonne 1
- copier-collage spécial 'transposer' le résultat à son emplacement d'origine.
Reste à chronométrer pour voir si ça te fait un gain dans ton cas.
eric
pas beaucoup d'autre possibilité que de couper-coller pour ordonner des colonnes.
Ajouter Application.ScreenUpdating = False au début, et mettre le calcul en manuel s'il y a des formules, à rétablir à la fin.
Une autre quand même :
- insérer une ligne en haut et numéroter l'ordre voulu.
- copier-collage spécial 'transposer' ailleurs
- trier sur colonne 1
- copier-collage spécial 'transposer' le résultat à son emplacement d'origine.
Reste à chronométrer pour voir si ça te fait un gain dans ton cas.
eric
Je vais essayer, c'est vrai que sur 10 colonnes, le presse-papier n'est utilisé que 2 fois.
Merci