Récupérer l’adresse d’une cellule

Retour vers Excel

On souhaite très souvent récupérer les références d’une cellule pour les injecter dans une variable ou pour créer une boucle,etc…

Voyons, sous quel format une adresse de cellule nous est présenté par  VBA. Voici ce que produit un double clic dans une case

grâce au code

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
  Dim MonAdresse As String 
  MonAdresse = Selection.Address
  MsgBox MonAdresse 
End Sub

Si on examine Excel on se rend compte

  1. que l’adresse nous est fournie en mode absolu; la présence des caractères $ nous l’indique
  2. que la plus grande adresse se situe en $IV$65536

Donc, le second signe $ ne peut se trouver qu’en 3ème ou 4ème position. Il nous suffit de le retrouver pour « casser » la chaîne de caractère et placer chaque partie dans une variable comme ceci

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  Dim MonAdresse As String, MaLigne As Double, MaColonne As String 
  MonAdresse = ActiveWindow.RangeSelection.Address 
  MsgBox MonAdresse 
  If Mid(MonAdresse, 4, 1) = "$" Then 
    MaColonne = Mid(MonAdresse, 2, 2)
    MaLigne = Mid(MonAdresse, 5) 
  ElseIf 
    Mid(MonAdresse, 3, 1) = "$" Then
    MaColonne = Mid(MonAdresse, 2, 1)
    MaLigne = Mid(MonAdresse, 4)
 End If 
 MsgBox MaLigne 
 MsgBox MaColonne 
  'Pour ne pas rester en mode édition 
  SendKeys ("{ESC}") 
End Sub

        

Mais il y a plus facile

L’adresse de la colonne étant donnée en numérique, on peut l’appliquer très facilement dans une commande utilisant Cells et n’oublions pas le paramêtre .offset qui nous permet à partir d’une cellule « connue » de nous déplacer dans nos tableaux sans avoir à sélectionner ces cellules lointaines

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
  MsgBox ActiveCell.Row
  MsgBox ActiveCell.Column 
End Sub

 

Cliquez ici pour télécharger le fichier exemple

FIN

Personnalisé par Bipbipcoyote.

AVERTISSEMENT !

La plupart des vidéos sur ce site ne m'appartiennent pas. Elles restent hébergées sur YouTube et vous pouvez aller les visionner sur place.
Elles sont éditées en mode public par leur auteur. Je les extrais de la plateforme pour pouvoir éventuellement ajouter des explications complémentaires 
et surtout pour les retrouver plus facilement. Je rappelle que ce site est d'abord MON aide-mémoire même si chacun peut en profiter.
Si un auteur ne souhaite pas que sa vidéo soit visible ici, il peut très facilement modifier les réglages YouTube et en empêcher la diffusion sur un site externe à YouTube..

Lisez aussi en bas de page, l'avis sur l'utilisation des cookies

Ceci fermera dans 30 secondes