VBA selection 1 colonne d'une plage
mj
-
bacus13 Messages postés 30 Statut Membre -
bacus13 Messages postés 30 Statut Membre -
Bonjour,
je cherche une commande VBA me permettant de positionner mon pointeur sur la premiére colonne d'une plage de cellule.
J'ai creer une fonction en VBA qui a en paramétre plusieurs plage de cellule, et pour l'une d'entre elle je souhaite récupérer des données de la premiére colonne, pour le moment j'ai réussi a positionner mon curseur en faisant:
RangeA.Cells(i, 1)
i est index alimenté par une boucle while.
Existe il une fonction en vba du genre "Range.FirstColumn" qui m'éviterai de poser mon index de colonne en dur?
Merci de vos réponse
je cherche une commande VBA me permettant de positionner mon pointeur sur la premiére colonne d'une plage de cellule.
J'ai creer une fonction en VBA qui a en paramétre plusieurs plage de cellule, et pour l'une d'entre elle je souhaite récupérer des données de la premiére colonne, pour le moment j'ai réussi a positionner mon curseur en faisant:
RangeA.Cells(i, 1)
i est index alimenté par une boucle while.
Existe il une fonction en vba du genre "Range.FirstColumn" qui m'éviterai de poser mon index de colonne en dur?
Merci de vos réponse
A voir également:
- VBA selection 1 colonne d'une plage
- Déplacer une colonne excel - Guide
- Trier une colonne excel - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
- Figer une colonne excel - Guide
1 réponse
Ceci te donnera la première colonne, à partir de B, de la première cellule non vide de la ligne "ligne"
prem_colonne = Left(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address(False, False, xlA1), Len(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address(False, False, xlA1)) - Len(ligne))
ou sinon, tu peux faire ça avec un tableau :
prem_colonne()= Split(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address, "$")
le nom de ta colonne (B,C,....) sera dans prem_colonne(1)
prem_colonne = Left(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address(False, False, xlA1), Len(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address(False, False, xlA1)) - Len(ligne))
ou sinon, tu peux faire ça avec un tableau :
prem_colonne()= Split(Sheets(onglet).Range("A" & ligne).End(xlToRight) _
.Address, "$")
le nom de ta colonne (B,C,....) sera dans prem_colonne(1)