OVH Cloud OVH Cloud

ActiveCell

4 réponses
Avatar
anonymousB
Bonjour - S'il vous plait - Merci

Question 1 : Comment modifier la cellule active de la=20
Feuille 2 en =E9tant par exemple sur la Feuill 1 ?
Quelque chose comme :=20
Sheets(2).ActiveCell.Address =3D "$A$5"

Question 2 (similaire) : Comment r=E9cup=E9rer l'adresse de la=20
cellule active de la Feuill 2 en =E9tant sur la Feuill 1 ?
Quelque chose comme :
MsgBox Sheets(2).ActiveCell.Address

4 réponses

Avatar
Daniel
Bonjour.
Je ferais simple (peut-être trop ?) :
1)
Worksheets("Feuil2").Select
Range("A5").Select
Worksheets("Feuil1").Select
2)
Worksheets("Feuil2").Select
Var = ActiveCell.Address
Worksheets("Feuil1").Select
MsgBox Var
Cordialement.
Daniel
"anonymousB" a écrit dans le message
de news: 178301c5005f$b21ac880$
Bonjour - S'il vous plait - Merci

Question 1 : Comment modifier la cellule active de la
Feuille 2 en étant par exemple sur la Feuill 1 ?
Quelque chose comme :
Sheets(2).ActiveCell.Address = "$A$5"

Question 2 (similaire) : Comment récupérer l'adresse de la
cellule active de la Feuill 2 en étant sur la Feuill 1 ?
Quelque chose comme :
MsgBox Sheets(2).ActiveCell.Address
Avatar
Bonjour - S'il vous plait - Merci

Je ferais simple (peut-être trop ?) :


Ha oui ! C'est trop simple !
La difficulté (voir les questions)est d'être sur une
feuille et d'agir sur une autre

Avatar
Alain CROS
Bonjour.

Pour la question 1, je pense que c'est impossible.

Pour la question 2, essayer ça mais il faut que la feuille qui comporte ce code est été activée au moins une fois.

Dans le code de la feuille, Par exemple "Feuil1":

Private CellActive As Range

Private Property Set Actif(Rg As Range)
Set CellActive = Rg
End Property

Public Property Get Actif() As Range
Set Actif = CellActive
End Property

Private Sub Worksheet_Activate()
Set Actif = ActiveCell
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Set Actif = ActiveCell
End Sub

Et pour tester, par exemple sur Feuil3, dessiner un bouton et lui associer ce code:

Sub LeTest()
MsgBox Worksheets("Feuil1").Actif.Address(, , , True)
End Sub

Alain CROS

"anonymousB" a écrit dans le message de news: 178301c5005f$b21ac880$
Bonjour - S'il vous plait - Merci

Question 1 : Comment modifier la cellule active de la
Feuille 2 en étant par exemple sur la Feuill 1 ?
Quelque chose comme :
Sheets(2).ActiveCell.Address = "$A$5"

Question 2 (similaire) : Comment récupérer l'adresse de la
cellule active de la Feuill 2 en étant sur la Feuill 1 ?
Quelque chose comme :
MsgBox Sheets(2).ActiveCell.Address
Avatar
AV
Pour la question 1 j'ai pas de réponse
Pour la question 2 tu pourrais peut-être te satisfaire de ça :
Pour "pister" la cellule active de la feuille "Feuil1", dans son module :

Private Sub Worksheet_SelectionChange(ByVal zz As Range)
ActiveWorkbook.Names.Add Name:="xx", RefersTo:="þuil1!" & ActiveCell.Address
End Sub

Pour tester :
Sub test()
MsgBox "Feuil1!" & [xx].Address
End Sub

AV