adressage et/ou sélection
Le
lauxeti

Bonsoir ,
Je souhaiterais en vba , sélectionner une cellule dans une zone nommée
("tablo") d'un classeur en connaissant le n° de ligne et le n° de
colonne ( n°lig = 5, n°col=7) de la cellule à sélectionner .
var1 = 5
var2 = 7
Comment sélectionner la cellule correspondant à H7( par ex.)avec les
variables var1, var2 et "tablo" ?
Merci
ci joint un fichier exemple
http://cjoint.com/?AJbuUXVU2Hk
Je souhaiterais en vba , sélectionner une cellule dans une zone nommée
("tablo") d'un classeur en connaissant le n° de ligne et le n° de
colonne ( n°lig = 5, n°col=7) de la cellule à sélectionner .
var1 = 5
var2 = 7
Comment sélectionner la cellule correspondant à H7( par ex.)avec les
variables var1, var2 et "tablo" ?
Merci
ci joint un fichier exemple
http://cjoint.com/?AJbuUXVU2Hk
Si var1 correspond au n° de ligne de la feuille :
Cells(var1, var2).Select
Si var1 correpond au n° de ligne par rapport au tableau (1 étant la
première ligne du tableau :
Range("Tablo")(var1,var2).Select
Cordialement.
Daniel
Dans le classeur que tu as publié, les variables ligne et colonne font référence à des coordonnées d'une cellule de la
feuille de calcul. Si tu veux trouver à quelle cellule de ton tableau ces coordonnées font référence, tu vérifies si
l'intersection des 2 plages de cellules a au moins une cellule en commun.
Tu as 2 plages de cellules
A ) Cells(5,7) qui est la cellule G5 de ta feuille de calcul
B ) Range("Tablo") qui est la plage E5:K11
Dans la procédure Rg représente l'intersection entre les 2 plages de cellules.
Pour exécuter ce qui suit, la feuille de ton tableau doit être la feuille affichée à l'écran
'------------------------
Sub test()
Dim Rg As Range, VarCol As Integer, VarLigne As Long
VarLigne = 5
VarCol = 7
Set Rg = Intersect(Cells(VarLigne, VarCol), Range("Tablo"))
If Not Rg Is Nothing Then
MsgBox "Les coordonnées correspondent à " & _
"la cellule """ & Rg.Address & """ du tableau."
Else
MsgBox "les coordonnés des variables " & _
"ne font pas partie du tableau."
End If
End Sub
'------------------------
Une autre façon de comprendre la chose, si ta variable ligne est 5 et que ton range("Tableau") débute à la ligne 5, la ligne
5 représente la première ligne du Range("Tablo") . Tu appliques le même raisonnement pour les colonnes. Maintenant, tu
pourrais écrire ceci :
Msgbox Range("Tablo").Cells(1,3).address
Le "1" représente la première ligne dans le tableau
le "3" représente la 3e colonne du tableau, la colonne 5 étant la première colonne, en conséquence, la colonne 7 est la 3e
ligne.
à partir de cela, on peut déduire différentes syntaxes, ça devient une question de préférence !
MichD
------------------------------------------
"lauxeti" a écrit dans le message de groupe de discussion :
Bonsoir ,
Je souhaiterais en vba , sélectionner une cellule dans une zone nommée
("tablo") d'un classeur en connaissant le n° de ligne et le n° de
colonne ( n°lig = 5, n°col=7) de la cellule à sélectionner .
var1 = 5
var2 = 7
Comment sélectionner la cellule correspondant à H7( par ex.)avec les
variables var1, var2 et "tablo" ?
Merci
ci joint un fichier exemple
http://cjoint.com/?AJbuUXVU2Hk