OVH Cloud OVH Cloud

Rectangle

6 réponses
Avatar
Crel
Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela aille
sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.

6 réponses

Avatar
michdenis
Bonjour Crel,

Tu aurais avantage à définir plus précisément ce que tu cherches !

Un petit exemple pour aller en feuil3 et sélectionner le Rectangle 3

Un clic droit sur ton rectangle en feuil1 et tu lui affecte la macro suivante:

'-----------------------
Sub AllerA()

With Worksheets("Feuil3")
.Select
.Shapes("Rectangle 3").Select
End With
End Sub
'-----------------------


Salutations!



"Crel" a écrit dans le message de news:
Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela aille
sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.
Avatar
Crel
Merci beaucoup Michdenis,
en fait je me suis mal exprimé.
J'ai une série de 40 rectangles "shapes" appelé rectangle1 à rectagle 40
je désire qu'en cliquant sur 1 "shapes", cela m'envoi sur la feuille
correspondante.
ex rectangle 1 pour feuille 1 rectangle 5 feuille 5 etc...
Encore merci.
Crel



"michdenis" a écrit dans le message de news:
#
Bonjour Crel,

Tu aurais avantage à définir plus précisément ce que tu cherches !

Un petit exemple pour aller en feuil3 et sélectionner le Rectangle 3

Un clic droit sur ton rectangle en feuil1 et tu lui affecte la macro
suivante:


'-----------------------
Sub AllerA()

With Worksheets("Feuil3")
.Select
.Shapes("Rectangle 3").Select
End With
End Sub
'-----------------------


Salutations!



"Crel" a écrit dans le message de
news:

Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela aille
sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.





Avatar
michdenis
Bonjour Crel,


Cette macro suppose que tu possède Excel 2000 ou plus récent à cause de la fonction split() non disponible sur les versions
antérieures
Et que tu as conservé dans l'appellation des objets rectangles l'espace qu'il y a entre le nom et le chiffre faisant partie
de son nom.


Tu attaches à chacun des rectangles la macro suivante.

'--------------------------
Sub AllerA()

With Worksheets("Feuil3")
Worksheets(Int(Split(Application.Caller)(1))).Select
End With

End Sub
'--------------------------


Salutations!


"Crel" a écrit dans le message de news:OukR$
Merci beaucoup Michdenis,
en fait je me suis mal exprimé.
J'ai une série de 40 rectangles "shapes" appelé rectangle1 à rectagle 40
je désire qu'en cliquant sur 1 "shapes", cela m'envoi sur la feuille
correspondante.
ex rectangle 1 pour feuille 1 rectangle 5 feuille 5 etc...
Encore merci.
Crel



"michdenis" a écrit dans le message de news:
#
Bonjour Crel,

Tu aurais avantage à définir plus précisément ce que tu cherches !

Un petit exemple pour aller en feuil3 et sélectionner le Rectangle 3

Un clic droit sur ton rectangle en feuil1 et tu lui affecte la macro
suivante:


'-----------------------
Sub AllerA()

With Worksheets("Feuil3")
.Select
.Shapes("Rectangle 3").Select
End With
End Sub
'-----------------------


Salutations!



"Crel" a écrit dans le message de
news:

Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela aille
sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.





Avatar
Crel
Merci beaucoup Robert
Patrick

"Robert Dezan" a écrit dans le message de news:

Bonsoir Crel,
Une autre solution que celle de Denis mais sans VBA.
Principe : ajouter un lien hypertexte sur chaque rectangle et le faire
pointer

sur une feuille
Faire un clic-droit sur le rectangle et "Ajouter un lien hypertexte"
Sélectionner "Emplacement dans ce document" et choisir le nom de feuille
dans la

liste et la cellule à activer.
Solution moins fastidieuse pour 40 Rectangles après avoir nommé les
feuilles :

- créer le "Rectange 1"
- ajouter le lien hypertexte à la "Feuille 1" cellule "A1"
- dupliquer le Rectangle 1 jusqu'à "Rectangle 40" et sur chacun d'eux
avec le

clic-droit "Modifier le lien", sélectionner les bonnes feuilles.

Bon courage
Robert Dezan

"Crel" a écrit dans le message de news:
OukR$
Merci beaucoup Michdenis,
en fait je me suis mal exprimé.
J'ai une série de 40 rectangles "shapes" appelé rectangle1 à rectagle 40
je désire qu'en cliquant sur 1 "shapes", cela m'envoi sur la feuille
correspondante.
ex rectangle 1 pour feuille 1 rectangle 5 feuille 5 etc...
Encore merci.
Crel



"michdenis" a écrit dans le message de news:
#
Bonjour Crel,

Tu aurais avantage à définir plus précisément ce que tu cherches !

Un petit exemple pour aller en feuil3 et sélectionner le Rectangle 3

Un clic droit sur ton rectangle en feuil1 et tu lui affecte la macro
suivante:


'-----------------------
Sub AllerA()

With Worksheets("Feuil3")
.Select
.Shapes("Rectangle 3").Select
End With
End Sub
'-----------------------


Salutations!



"Crel" a écrit dans le message de
news:

Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela
aille



sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.













Avatar
Frédéric Sigonneau
Bonsoir,

Sur la même idée que Denis, mais en supposant que les feuilles soient nommées
(d'un nom quelconque, voire qu'elles conservent leur nom par défaut) et que ces
noms soient le texte de chacune des zones de texte.
Ce qui peut permettre d'être indépendant de l'index des feuilles (leur position
dans le classeur) pour les sélectionner comme du nom des zones de texte (pas
évidents de s'y retrouver après quelques ajouts/suppressions).
Toujours avec une seule macro affectée à chacune des zones de texte :

Sub SelectFeuilles()
Dim NomFeuille
With ActiveSheet
NomFeuille = _
.Shapes(Application.Caller).TextFrame.Characters.Text
End With
Sheets(NomFeuille).Select
End Sub

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela aille
sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.


Avatar
Crel
Merci beaucoup Fredéric.
Patrick.

"Frédéric Sigonneau" a écrit dans le message
de news:
Bonsoir,

Sur la même idée que Denis, mais en supposant que les feuilles soient
nommées

(d'un nom quelconque, voire qu'elles conservent leur nom par défaut) et
que ces

noms soient le texte de chacune des zones de texte.
Ce qui peut permettre d'être indépendant de l'index des feuilles (leur
position

dans le classeur) pour les sélectionner comme du nom des zones de texte
(pas

évidents de s'y retrouver après quelques ajouts/suppressions).
Toujours avec une seule macro affectée à chacune des zones de texte :

Sub SelectFeuilles()
Dim NomFeuille
With ActiveSheet
NomFeuille = _
.Shapes(Application.Caller).TextFrame.Characters.Text
End With
Sheets(NomFeuille).Select
End Sub

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonjour à toutes et tous.
Je désire qu'en cliquant sur une zone de texte ex: rectangle 2, cela
aille


sur la feuille 2, puis sur le rectangle 3 feuille 3 etc...
Merci beaucoup.
Patrick.