OVH Cloud OVH Cloud

macro pour basculer de feuil1 à feuil2 même cellule

3 réponses
Avatar
marchepied
Bonjours,
Dans un document j'ai 2 grands tableaux "feuil1"=20
et "feuil2"=20
Quand je navigue dans "feuil1" j'active une cellule qui=20
m'int=E9resse (exemple au hasard B1914) je recherche une=20
macro qui me permettrai, si je fais (par exemple) ctrl A =20
de basculer dans la "feuil2" et que la m=EAme cellule soit=20
activ=E9e. (exemple B1914 de "feuil2") Et l'id=E9al serai, que=20
cette cellule activ=E9e de "feuil2" soit en haut de l'=E9cran.
Si vous pouvez m'aider pour cette macro, =E7a serai tr=E8s=20
sympa.
Merci,
Marchepied

3 réponses

Avatar
AV
Dans le module de ThisWorkbook
Private Sub Workbook_Open()
Application.OnKey "^{a}", "zzzz"
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "^{a}"
End Sub

Dans un module ordinaire :
Sub zzzz()
If ActiveSheet.Name = "Feuil1" Then
With ActiveCell
x1 = .Address
x2 = .Row
x3 = .Column
End With
Sheets("Feuil2").Select
Range(x1).Activate
ActiveWindow.ScrollRow = x2
ActiveWindow.ScrollColumn = x3
End If
End Sub

AV
Avatar
marchepied
Merci AV pour la réponse.
Mais ça plante à la ligne: Range(x1).Activate
message "erreur d'execution "1004"
avez-vous une idée sur la raison du blocage ?
En mettant select à la place de activate, c'est la même
chose.
Toutes les instructions avant cette ligne, s'exécutent
bien.
Pendant l'execution, si je met le curseur sur x1, de cette
ligne, il affiche "x1 = "$B$66"
Merci de votre aide,
marchepied,

-----Message d'origine-----
Dans le module de ThisWorkbook
Private Sub Workbook_Open()
Application.OnKey "^{a}", "zzzz"
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "^{a}"
End Sub

Dans un module ordinaire :
Sub zzzz()
If ActiveSheet.Name = "Feuil1" Then
With ActiveCell
x1 = .Address
x2 = .Row
x3 = .Column
End With
Sheets("Feuil2").Select
Range(x1).Activate
ActiveWindow.ScrollRow = x2
ActiveWindow.ScrollColumn = x3
End If
End Sub

AV


.



Avatar
AV
Mais ça plante à la ligne: Range(x1).Activate


Vraisemblablement une erreur de recopie du code fourni (à la ligne
d'initialisation de la variable x1)
......
x1 = .Address
.....

Vérifie qu'il y a bien un point après chaque signe
AV