J’ai ce code pour sélectionner des plages de cellules. Dans mon exemple de la colonne B à D et une plage sur deux de la ligne 2 à la ligne 20.
Le problème est que la première ligne est entièrement sélectionnée,
Sub Selection_1_sur_2()
Dim i As Long
Dim rng As Range
Const Min As Long = 2 ' Première ligne
Const Max As Long = 20 ' Dernière ligne
Set rng = Range(Min & ":" & Min)
For i = Min To Max Step 2
Set rng = Union(rng, Range("B" & i, "D" & i)) 'de la colonne B à la D
Next i
rng.Select
End Sub
J’espère qu’un pro pourra me dire ce qui ne va pas, et vous en remercie d’avance
Merci d'avoir répondu, ce que je souhaite, c'est sélectionner des plages de cellules par exemple de B2 à D2 et une plage sur deux jusqu'a la ligne 20 soit B2 à D2 B4 à D4 etc ...
mon problème est que la première ligne se sélectionne entièrement alors qu'il faudrai B2 à D2
Et un grand merci, je tournais en rond et ne voyais pas l'erreur.
Pour t'expliquer, en réalité Step 2, fait référence à une cellule ce qui me permet de moduler mes plage sélectionnées.
Au final je voudrai dans deux cellules saisir les caractéristiques de ma plage à sélectionner, ce qui me permettrai une grande souplesse d'utilisation.
Alors là merci infiniment Raja, d’une pierre deux coup, code épuré souplesse d’utilisation pour l’équipe.
Avec quelques cellules je vais piloter mes sélections, mes mise en forme et calculs.
J’adore Excel et il me surprendra toujours, les possibilités sont sans limite.
Avec le concours de Raja et pour tous ceux à qui ça peut intéresser, en réservant la cellule B1 et C1 pour déterminer la plage à traiter, dans lesquelles on saisira le n° de ligne de début et fin de plage
En D1 le saut de sélection si on souhaite sélectionner une ligne sur deux saisir 2
en E1 Et F1 la plage à sélectionner
B1 saisir 1
C1 25
D1 2
E1 C
F1 H
ce code entièrement modulable depuis les cellules
Sub Selection_1_sur_X()
Dim i As Integer
For i = Range("B1") To Range("C1") Step Range("D1")
Union(selection, Range(Range("E1") & i, Range("F1") & i)).Select
Next i
End Sub