Récupérer les bornes d'une Range

Mattharm

XLDnaute Occasionnel
Bonjour à tous,

J'aimerais récupérer les bornes d'une Range pour les utiliser dans une fonction :

Code:
function test(debut as Range)
msgbox debut
endfunctino

sub princ(byval T as Range)
test(left(T.address,instr(1,T.address,":")))
end sub

Quelque chose dans ce goût là.
Je suis capable de récupérer par un Left,Right, Instr, les bornes mais pour l'envoyer vers la fonction....

Si quelqu'un à une idée ? Merci
Mattharm
 

mromain

XLDnaute Barbatruc
Re : Récupérer les bornes d'une Range

bonjour Mattharm

pour récupérer l'adresse du coin supérieur-gauche de la Range T, il faut écrire :
Code:
T.Resize(1, 1).Address
et pour l'adresse du coin inférieur-droit, il faut écrire :
Code:
T.Resize(1, 1).Offset(T.Rows.Count - 1, T.Columns.Count - 1).Address

a+
 

Hervé

XLDnaute Barbatruc
Re : Récupérer les bornes d'une Range

bonjour

sans passer par resize :

Code:
Public Sub roro()
Dim plage As Range
 
Set plage = Range("a1:c10")
 
With plage
    MsgBox plage(1, 1).Address 'renvoi A1
    MsgBox plage(.Rows.Count, .Columns.Count).Address 'renvoi C10
End With
 
End Sub

salut
 

vbacrumble

XLDnaute Accro
Re : Récupérer les bornes d'une Range

Re


Ai-je bien compris la problématique cette fois ?

Code:
Function bornerange(p As Range)
x = p.Address(0, 0)
d = Split(x, ":")(0): f = Split(x, ":")(1)
MsgBox "Adresse Début : " & d & _
        ", Adresse Fin :" & f & _
        " de la selection en cours."
End Function
Sub stest()
bornerange Selection
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 388
Messages
2 087 864
Membres
103 672
dernier inscrit
ammarhouichi