Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

référence complexe de cellules dans VBA

1 réponse
Avatar
patrice-toulouse
si j'écris une référence à une plage de la manière suivante cela ne marche
pas :
tableau = Worksheets("feuille").Range(Cells(2 + (Z - 1) * 22, 1),Cells(1 + Z
* 22, 14).Value

si je l'écris comme ci dessous cela fonctionne:
Z = Range("variable").Value
debselec = Cells(2 + (Z - 1) * 22, 1).Address(False, False)
finselec = Cells(1 + Z * 22, 14).Address(False, False)
tableau = Worksheets("feuille").Range(debselec & ":" & finselec).Value

Ni aurait'il pas de façon plus simple d'écrire ce genre de référence ?
merci d'avance
Patrice

1 réponse

Avatar
michdenis
Bonjour Patrice,

With Worksheets("Feuille")
tableau = .Range(.Cells(2 + (Z - 1) * 22, 1),.Cells(1 + Z * 22, 14).Value
End With

Il ne faut pas oublier le "."(point) devant Range et les 2 Cells qui sont des objets appartenant à la même feuille "feuille"


Salutations!



"patrice-toulouse" a écrit dans le message de news:

si j'écris une référence à une plage de la manière suivante cela ne marche
pas :
tableau = Worksheets("feuille").Range(Cells(2 + (Z - 1) * 22, 1),Cells(1 + Z
* 22, 14).Value

si je l'écris comme ci dessous cela fonctionne:
Z = Range("variable").Value
debselec = Cells(2 + (Z - 1) * 22, 1).Address(False, False)
finselec = Cells(1 + Z * 22, 14).Address(False, False)
tableau = Worksheets("feuille").Range(debselec & ":" & finselec).Value

Ni aurait'il pas de façon plus simple d'écrire ce genre de référence ?
merci d'avance
Patrice