EXCEL/VBA Comment déterminer la position de la cellule précédente

EXCEL/VBA Comment déterminer la position de la cellule précédente - VB/VBA/VBS - Programmation

Marsh Posté le 30-01-2006 à 15:25:07    

Bonjour,
 
Comment, après un changement de sélection, déteminer la position de la cellule précédente ?
 
J'utilse une solution provisoire bien lourde :
 
1/ dans Worksheet_Activate()
----------------------------
Je mémorise la position courante de la cellule active dans 2 variables globales LIGNE et COLONNE
 
Private Sub Worksheet_Activate()
  LIGNE = ActiveCell.row
  COLONNE =ActiveCell.column
End Sub

 
2/ En entrant dans Worksheet_SelectionChange(ByVal Target As Excel.Range)
----------------------------------------------------------------
LIGNE et COLONNE pointe la cellule qui précéde le changement
J'effectue mon traitement, puis avant de quitter Worksheet_SelectionChange()
Je mets à jour LIGNE et COLONNE.
 
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
' ------------------------------------------------------------------
' TRAITEMENT à l'aide de LIGNE et COLONNE
'
'
'
'
'------------------------------------------------------------------
 
  LIGNE = ActiveCell.row
  COLONNE = ActiveCell.column
End Sub

 
Existe t-il un moyen plus simple ( qui ne demande pas l'initialisation) ?
 
Merci d'avance
 
JHL


Message édité par jhl14 le 30-01-2006 à 15:35:12
Reply

Marsh Posté le 30-01-2006 à 15:25:07   

Reply

Marsh Posté le 30-01-2006 à 16:28:34    

Target.row et Target.Column

Reply

Marsh Posté le 30-01-2006 à 17:50:21    

Bonsoir DamoienCYS
 
Target.row et Target.Column donnent la position courante après changement et non la position avant le changement de cellule active.
C'est cette position que je recherche.
 
Merci
 
JHL

Reply

Marsh Posté le 12-03-2009 à 08:56:33    

Bonjour,
 
Je repose la question de jhl14. Comment, après un changement de sélection, déterminer la position de la cellule précédente ?  
 
Merci d'avance pour votre aide,

Reply

Marsh Posté le 19-03-2009 à 11:42:07    

Bonjour
 
Environ 30sc avec Google....
 

Code :
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.     ActiveWorkbook.Names.Add Name:="vev", RefersToR1C1:=ActiveCell
  3.     Application.Goto Reference:="vev"
  4.     MsgBox Application.PreviousSelections(2).Address
  5. End Sub


 
Cordialement


Message édité par SuppotDeSaTante le 19-03-2009 à 11:42:21

---------------
Soyez malin, louez entre voisins !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed