reprobème

2 réponses
Avatar
CED
resalut,
le probl=E8me avec cette macro c'est qu'on ne peut pas=20
g=E9rer plusieur feuilles =E0 la fois =3D> je suis oblig=E9 de=20
recopier sur chaque feuilles la macro
j'ai essay=E9 de remplacer worksheet par workbook mais =E7a=20
ne marche pas


"Odilon" a =E9crit dans le message news:
Bonjour

Private Sub Worksheet_SelectionChange(ByVal Target As=20
Range)
If Target.Row <> r Then GoTo fin
If Target.Column <> c Then MsgBox "changement"
fin:
c =3D Target.Column
r =3D Target.Row
End Sub

et dans le haut d'un module standard
Public r As Long, c As Integer

odilon

"Ced" a =E9crit dans le message news:
20c101c33eeb$872d5e80$a601280a@phx.gbl...
Salut,
Comment faire pour lancer une routine vba =E0 chaque fois
que l'on change de cellule ? peut-on aussi le faire a
chaque que l'on change de ligne de selection ?(ex : si je
suis sur A1 et que je passe sur A2 =3D> rien ne se passe;
si je suis sur A1 et que je passe sur B1 ou C1 =3D> une
routine se lance )

2 réponses

Avatar
Norbert
Bonjour CED
S'il ne s'agit que de consultations, un moyen simple consiste à sélectionner
les feuilles (donc passer en mode Groupe de travail), les déplacements
seront ainsi effectués sur l'ensemble des feuilles et tu retrouveras donc la
même cellule active.
Cordialement
Pascal

"CED" a écrit dans le message de news:
090f01c33f04$d5b4c980$
resalut,
le problème avec cette macro c'est qu'on ne peut pas
gérer plusieur feuilles à la fois => je suis obligé de
recopier sur chaque feuilles la macro
j'ai essayé de remplacer worksheet par workbook mais ça
ne marche pas


"Odilon" a écrit dans le message news:
Bonjour

Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Target.Row <> r Then GoTo fin
If Target.Column <> c Then MsgBox "changement"
fin:
c = Target.Column
r = Target.Row
End Sub

et dans le haut d'un module standard
Public r As Long, c As Integer

odilon

"Ced" a écrit dans le message news:
20c101c33eeb$872d5e80$
Salut,
Comment faire pour lancer une routine vba à chaque fois
que l'on change de cellule ? peut-on aussi le faire a
chaque que l'on change de ligne de selection ?(ex : si je
suis sur A1 et que je passe sur A2 => rien ne se passe;
si je suis sur A1 et que je passe sur B1 ou C1 => une
routine se lance )
Avatar
papou
Oups !
Je m'aperçois que mon compte a été modifié dans OE, je corrige donc
immédiatement cette erreur et signe de mon pseudo.
(Ca m'apprendra à donner mon mot de passe réseau quand je suis absent !)
Pascal

"Norbert" <nspm> a écrit dans le message de news:
#
Bonjour CED
S'il ne s'agit que de consultations, un moyen simple consiste à
sélectionner

les feuilles (donc passer en mode Groupe de travail), les déplacements
seront ainsi effectués sur l'ensemble des feuilles et tu retrouveras donc
la

même cellule active.
Cordialement
Pascal

"CED" a écrit dans le message de news:
090f01c33f04$d5b4c980$
resalut,
le problème avec cette macro c'est qu'on ne peut pas
gérer plusieur feuilles à la fois => je suis obligé de
recopier sur chaque feuilles la macro
j'ai essayé de remplacer worksheet par workbook mais ça
ne marche pas


"Odilon" a écrit dans le message news:
Bonjour

Private Sub Worksheet_SelectionChange(ByVal Target As
Range)
If Target.Row <> r Then GoTo fin
If Target.Column <> c Then MsgBox "changement"
fin:
c = Target.Column
r = Target.Row
End Sub

et dans le haut d'un module standard
Public r As Long, c As Integer

odilon

"Ced" a écrit dans le message news:
20c101c33eeb$872d5e80$
Salut,
Comment faire pour lancer une routine vba à chaque fois
que l'on change de cellule ? peut-on aussi le faire a
chaque que l'on change de ligne de selection ?(ex : si je
suis sur A1 et que je passe sur A2 => rien ne se passe;
si je suis sur A1 et que je passe sur B1 ou C1 => une
routine se lance )