Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Centrage colonnes non adjacentes

VIARD

XLDnaute Impliqué
Bonjour à tous

Voilà actuellement j'utilise ceci:

Range("A:A").Columns.HorizontalAlignment = xlCenter

mais je veux utiliser la méthode "Cells" pour le faire, 1 colonne sur 2.

A+

Jean-Paul
 

MJ13

XLDnaute Barbatruc
Re : Centrage colonnes non adjacentes

Bonjour Jean-Paul

Une piste:

Code:
Range("A:A, C:C, E:E").Columns.HorizontalAlignment = xlCenter

Par contre pour l'automatisation sur une plage, attendons les pros...
 

job75

XLDnaute Barbatruc
Re : Centrage colonnes non adjacentes

Bonjour VIARD, Michel,

Par contre pour l'automatisation sur une plage, attendons les pros...

Bah...

Code:
Sub Centrer()
Dim P As Range, i As Integer
Set P = [B2:Z100] 'à adapter
P.HorizontalAlignment = xlGeneral
For i = 1 To P.Columns.Count Step 2
  P.Columns(i).HorizontalAlignment = xlCenter
Next
End Sub
A+
 

VIARD

XLDnaute Impliqué
Re : Centrage colonnes non adjacentes

Bonjour MJ13, Job75 et à tous

MJ, oui c'est une méthode de ce genre que j'utilise avec un Array.
ce n'est pas très souple.

Job, parcontre là, ça me plait bien, je vais tester, ça ne doit pas poser de problème.

Merci à tous deux

Jean-Paul
 

MJ13

XLDnaute Barbatruc
Re : Centrage colonnes non adjacentes

Bonjour Jean-Paul, Viard

J'aime boine la méthode de Gérard .

Voici une autre façon de faire sur les colonnes sélectionnées.

Code:
Sub Centre_Selection_1_Colonne_sur_2()
For i = ActiveCell.Column To ((Selection.Columns.Count + ActiveCell.Column)) Step 2
Columns(i).HorizontalAlignment = xlCenter
Next
End Sub
 

job75

XLDnaute Barbatruc
Re : Centrage colonnes non adjacentes

Bonjour Michel, le fil,

Hum fais attention, la cellule active n'est pas forcément dans la 1ère colonne à gauche...

Code:
Sub Centre_Selection_1_Colonne_sur_2()
For i = Selection.Column To Selection.Columns.Count + Selection.Column - 1 Step 2
Columns(i).HorizontalAlignment = xlCenter
Next
End Sub
Si l'on ne veut pas centrer des colonnes entières, sélectionner la plage :

Code:
Sub Centre_Selection_1_Colonne_sur_2()
For i = 1 To Selection.Columns.Count Step 2
Selection.Columns(i).HorizontalAlignment = xlCenter
Next
End Sub
A+
 

Discussions similaires

Réponses
2
Affichages
183
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…