Nombre de colonnes d'une selection
Bonjour,
Je m'interroge sur la façon d'obtenir le nombre de colonnes d'une selection !
Ca parait simple lorsque les cellules sont connexes mais dans le cas contraire le résultat est quelque peu étonnant!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| Sub nbcolonnes()
Dim MaSelection As Range
Dim MaSelection2 As Range
Set MaSelection = Union(Range("g9"), Range("i6"), Range("i13"), Range("k14"), Range("l7"))
MaSelection.Interior.Color = 10498160
MsgBox "Columns.count =" & MaSelection.Columns.Count _
& vbCr & "Areas count = " & MaSelection.Areas.Count, , "Maselection : " & MaSelection.Address
Debug.Print "Columns.count =" & MaSelection.Columns.Count _
& " Areas count = " & MaSelection.Areas.Count & " Maselection : " & MaSelection.Address
Set MaSelection2 = Range("$B$9:$C$10")
MsgBox "Columns.count =" & MaSelection2.Columns.Count _
& vbCr & "Areas count = " & MaSelection2.Areas.Count, , "Maselection2 : " & MaSelection2.Address
Debug.Print "Columns.count =" & MaSelection2.Columns.Count _
& " Areas count = " & MaSelection2.Areas.Count & " Maselection 2: " & MaSelection2.Address
Set MaSelection2 = Union(Range("B9"), Range("C10"))
MsgBox "Columns.count =" & MaSelection2.Columns.Count _
& vbCr & "Areas count = " & MaSelection2.Areas.Count, , "Maselection2 : " & MaSelection2.Address
Debug.Print "Columns.count =" & MaSelection2.Columns.Count _
& " Areas count = " & MaSelection2.Areas.Count & " Maselection 2: " & MaSelection2.Address
End Sub |
donne
Columns.count =1 Areas count = 5 Maselection : $G$9,$I$6,$I$13,$K$14,$L$7 alors que j'ai 4 colonnes distinctes
Columns.count =2 Areas count = 1 Maselection 2: $B$9:$C$10
Columns.count =1 Areas count = 2 Maselection 2: $B$9,$C$10
Quelqu'un a-t-il une méthode "globale" ?