OVH Cloud OVH Cloud

selection partielle de ActiveCell.CurrentRegion

47 réponses
Avatar
J
Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@

10 réponses

1 2 3 4 5
Avatar
J
Bonjour FL
merci à toi
Là, le départ est bon, mais cela ne se limite pas à la CurrentRegion
@+
cordialement
J@@
Bonjour,
essaies cela

Range( "B"& Range("B1").end(xldown).row & ":F"&
Range("F65536").end(xlup).row)

Cordialement
FL


"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B à
la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@






Avatar
J
Bonjour Ange
La référence à ActiveCell.CurrentRegion tinet au fait que dans la
feuille qui m'est transmise, il y a pleins de petites zones de saisies
autonomes.
Je pensais qu'une fois arrivant à sélectionner que les données qui me
sont utiles dans une de ces zones, je pourrais passer de l'une à l'autre
récupérer les données.

Dans ta proposition, je sélectionne bien la 1ere cellule de B de la
CurrentRegion jusqu'à F, mais elle ne s'arrête pas à la dernière cellule
de F de cette même CurrentRegion, elle va bcp plus bas.
Je n'y suis pas encore
Merci
@+
J@@

Autre lecture de ta question, si tu souhaites absolument te référer à la
séquence ActiveCell.CurrentRegion :

With ActiveCell.CurrentRegion
.Range("B1:F" & .Range("F" & .Cells.Count).End(xlUp).Row).Select
End With

----------
Ange Ounis
----------

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais
d'un nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne
B à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@




Avatar
J
Bonjour JB
merci pour la réponse, mais là, cela sélectionne depuis B1, alors que je
veux que la sélection ne concerne que la CurrentRegion.
Je me suis mal exprimé.
@+
cordialement
J@@
Bonjour,

[B1].Resize([B65000].End(xlUp).Row, 5).Select

JB


Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@





Avatar
J
Bonjour lSteph
(réponse tardive, suis allé dormir :-)
ta réponse sélectionne en effet, dans CurrentRegion, depuis la 1ere
cellule de B, mais va jusqu'au bout de la CurrentRegion, alors que je
voudrais sélectionner "que" jusqu'à la dernière cellule de la colonne F
de cette CurrentRegion.

Par ailleurs, en vrai de vrai, je voulais sélectionné depuis le *2ème*
cellule de B, je pensai adapter aisément le code, et beh ... je ne vois
pas comment.

Merci pour les lumières
cordialement
J@@

Bonjour J@@,

Ceci irait-il:

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
Range(.Cells(2), .Cells(.Cells.Count)).Select
End With
End Sub

'Cordialement.

LSteph

"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B à
la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@






Avatar
J
Bonjour JB
Là cela me sélectionne depuis B1 jusqu'à F8, sans que je comprenne
pourquoi, j'ai encore des données en B9, alors qu'en F je n'en ai pas en
dessous de F5.

Il va me falloir encore des dizaines de siècles avant de comprendre VBA :-<
@+
J@@

[B1].Resize(ActiveCell.CurrentRegion.Rows.Count, 5).Select

JB




Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@





Avatar
lSteph
Re, J@@

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
If Not IsEmpty(.Cells(.Cells.Count)) Then
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count)).Select
Else
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count).End(xlUp)).Select
End If
End With
End Sub

'Bonne soirée

"J@@" a écrit dans le message de news:

Bonjour lSteph
(réponse tardive, suis allé dormir :-)
ta réponse sélectionne en effet, dans CurrentRegion, depuis la 1ere
cellule de B, mais va jusqu'au bout de la CurrentRegion, alors que je
voudrais sélectionner "que" jusqu'à la dernière cellule de la colonne F de
cette CurrentRegion.

Par ailleurs, en vrai de vrai, je voulais sélectionné depuis le *2ème*
cellule de B, je pensai adapter aisément le code, et beh ... je ne vois
pas comment.

Merci pour les lumières
cordialement
J@@

Bonjour J@@,

Ceci irait-il:

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
Range(.Cells(2), .Cells(.Cells.Count)).Select
End With
End Sub

'Cordialement.

LSteph

"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@







Avatar
lSteph
Re,J@@

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
If Not IsEmpty(.Cells(.Cells.Count)) Then
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count)).Select
Else
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count).End(xlUp)).Select
End If
End With
End Sub

"J@@" a écrit dans le message de news:

Bonjour Ange & lSteph
c'était ma question du samedi soir, un peu embrumée ;-)

J'ai comparé vos 2 propositions :
Le départ en B est OK pour les 2
- Le code lSteph :
va bien à la dernière ligne de la CurrentRegion (définie par la colonne
A), mais si par malheur il y a qq chose en G, va jusqu'en G au lieu de
s'arrêter en F;
- Le code noté "FS":
reste bien de B à F, et va à la dernière ligne de F, mais ne me récupère
pas les dernières saisies en B si elles sont plus basses.

merci les amis
@+
J@@

Merci , pas vu cette subtilité
ce qui donne effectivement autre chose
et en relisant le sujet il est clair que ce n'est pas évident!

Bon Dimanche.

lSteph

"Ange Ounis" a écrit dans le message de news:

Pas très éloigné en effet, mais les résultats sont cependant très
différents :

http://cjoint.com/?iBm5w5WaEz

D'où mon commentaire sur une 'lecture différente' de la question. Seul
J@@ pourra nous dire ce qui correspond à son besoin (si qqchose y
correspond:)

----------
Ange Ounis
----------

Bonjour Frédéric,
?
cela ne semble pas très éloigné de ma proposition!

Cordialement.

lSteph
"Ange Ounis" a écrit dans le message de news:

Autre lecture de ta question, si tu souhaites absolument te référer à
la séquence ActiveCell.CurrentRegion :

With ActiveCell.CurrentRegion
.Range("B1:F" & .Range("F" & .Cells.Count).End(xlUp).Row).Select
End With

----------
Ange Ounis
----------

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais
d'un nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la
colonne B à la dernière cellule de la colle F" de cette
CurrentRegion?

merci,à tous et bon dimanche
@+
J@@













Avatar
J
Rebonjour lSteph
c'est moins bien ;-)
ta 1ere solution était plus proche, j'ai beau donner des coups de
tournevis dans tous les sens, je n'améliore rien.
Et en plus (mais ce n'est pas à cause de cela) j'ai une fuite d'eau dans
la cuisine, faut que je coure chercher la boîte à outils :-<

j'ai mis un embryon de fichier sur cjoint

http://cjoint.com/?iBv0kK7N4a

Bonne soirée (matinée pour moi, j'ai le dimanche devant moi :-))
@+
J@@


Re, J@@

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
If Not IsEmpty(.Cells(.Cells.Count)) Then
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count)).Select
Else
Range(.Cells(1).Offset(1, 1), .Cells(.Cells.Count).End(xlUp)).Select
End If
End With
End Sub

'Bonne soirée

"J@@" a écrit dans le message de news:

Bonjour lSteph
(réponse tardive, suis allé dormir :-)
ta réponse sélectionne en effet, dans CurrentRegion, depuis la 1ere
cellule de B, mais va jusqu'au bout de la CurrentRegion, alors que je
voudrais sélectionner "que" jusqu'à la dernière cellule de la colonne F de
cette CurrentRegion.

Par ailleurs, en vrai de vrai, je voulais sélectionné depuis le *2ème*
cellule de B, je pensai adapter aisément le code, et beh ... je ne vois
pas comment.

Merci pour les lumières
cordialement
J@@

Bonjour J@@,

Ceci irait-il:

Sub CurRegSaufPremCol()
With ActiveCell.CurrentRegion
Range(.Cells(2), .Cells(.Cells.Count)).Select
End With
End Sub

'Cordialement.

LSteph

"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@









Avatar
FL
Je n'ai donc pas bien compris ta demande, et si je consulte les différentes
réponses données à ton problême, je ne suis pas le seul
Dois-je comprendre que sur la même feuille tu as plusieurs tableaux qui se
trouvent de la colonne A à la colonne F. et que tu veux que quelque soit le
tableau ou tu te trouves sélectionner entre B et F la partie courante.

@+
FL

"J@@" a écrit dans le message de news:

Bonjour FL
merci à toi
Là, le départ est bon, mais cela ne se limite pas à la CurrentRegion
@+
cordialement
J@@
Bonjour,
essaies cela

Range( "B"& Range("B1").end(xldown).row & ":F"&
Range("F65536").end(xlup).row)

Cordialement
FL


"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@







Avatar
J
Bonjour FL
en effet, tu n'es pas le seul, des ténèbres de ma pensée tortueuse ne
peut jaillir la lumière :-<

Dois-je comprendre que sur la même feuille tu as plusieurs tableaux qui se
trouvent de la colonne A à la colonne F. et que tu veux que quelque soit le
tableau ou tu te trouves sélectionner entre B et F la partie courante.
voilà, c'est cela

A tout hasard, j'ai joint un fichier là : http://cjoint.com/?iBv0kK7N4a

merci à toi
J@@


@+
FL

"J@@" a écrit dans le message de news:

Bonjour FL
merci à toi
Là, le départ est bon, mais cela ne se limite pas à la CurrentRegion
@+
cordialement
J@@
Bonjour,
essaies cela

Range( "B"& Range("B1").end(xldown).row & ":F"&
Range("F65536").end(xlup).row)

Cordialement
FL


"J@@" a écrit dans le message de news:

Bonjour (XL2000)VBA
j'ai des range construits sur le même modèle, (colonne A à F) mais d'un
nombre de lignes variables.
le nombre de ces range est variable.

Quand j'ai une cellule d'un range qui est sélectionnée, je sais
sélectionner tout le bloc : ActiveCell.CurrentRegion.Select

Mais comment sélectionner seulement "de la 1ere cellule de la colonne B
à la dernière cellule de la colle F" de cette CurrentRegion?

merci,à tous et bon dimanche
@+
J@@









1 2 3 4 5