envoi vers un onglet depuis une cellule

Le
deedooz
Bonjour,
Sur l'onglet (Feuil1) j'ai plusieurs lignes avec du texte (A1:A56)
En fait, les 56 lignes correspondent aux 56 onglets de mon classeur.
Le nom de ces classeurs etant amené a évoluer (ainsi que leur nombre), je
voudrais ecrire en VBA un genre de lien hypertexte qui aurait pour action
simple de m'envoyer sur l'onglet Feuil2 lorsque je clique sur la cellule A2 ;
de m'envoyer sur l'onglet Feuil8 lorsque je clique sur la cellule A8,
J'espere avoir été assez clair dans ma demande.
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
FFO
Le #18512121
Salut à toi
Ce code devrait convenir :

For i = 1 To Sheets.Count
If Sheets(i).Name <> "Feuil1" Then
Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i), Address:="",
SubAddress:= _
"" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
"!A1"
End If
Next

Dis Moi !!!!!
deedooz
Le #18512291
Salut
Non ca ne fonctionne pas : "Erreur de compilation - Erreur de syntaxe" il me
met.
En plus:
Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i), Address:="",
SubAddress:= _
"" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
"!A1"
est noté en rouge.
Merci quand meme.

"FFO" a écrit :

Salut à toi
Ce code devrait convenir :

For i = 1 To Sheets.Count
If Sheets(i).Name <> "Feuil1" Then
Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i), Address:="",
SubAddress:= _
"" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
"!A1"
End If
Next

Dis Moi !!!!!



deedooz
Le #18512281
Désolé c'est moi qui ai merdé ... ton code fonctionne super bien merci

"deedooz" a écrit :

Salut
Non ca ne fonctionne pas : "Erreur de compilation - Erreur de syntaxe" il me
met.
En plus:
Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i), Address:="",
SubAddress:= _
"" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
"!A1"
est noté en rouge.
Merci quand meme.

"FFO" a écrit :

> Salut à toi
> Ce code devrait convenir :
>
> For i = 1 To Sheets.Count
> If Sheets(i).Name <> "Feuil1" Then
> Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i), Address:="",
> SubAddress:= _
> "" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
> "!A1"
> End If
> Next
>
> Dis Moi !!!!!
>


garnote
Le #18512411
Salut,

Peut-être aussi, en supposant que la colonne A ne
contienne rien d'autre que des noms d'onglets :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 And Not IsEmpty(Target) Then _
Sheets(Target.Value).Activate
End Sub

Private Sub Worksheet_Activate()
Dim F As Worksheet
Dim i As Integer
For Each F In ActiveWorkbook.Worksheets
i = i + 1
Cells(i, 1) = F.Name
Next F
End Sub

Serge


"deedooz"
Bonjour,
Sur l'onglet (Feuil1) j'ai plusieurs lignes avec du texte (A1:A56)
En fait, les 56 lignes correspondent aux 56 onglets de mon classeur.
Le nom de ces classeurs etant amené a évoluer (ainsi que leur nombre), je
voudrais ecrire en VBA un genre de lien hypertexte qui aurait pour action
simple de m'envoyer sur l'onglet Feuil2 lorsque je clique sur la cellule A2 ;
de m'envoyer sur l'onglet Feuil8 lorsque je clique sur la cellule A8, ...
J'espere avoir été assez clair dans ma demande.
Merci


garnote
Le #18512621
Plus prudent d'ajouter Range("A:A").ClearContents
au cas où une feuille serait supprimée et pour
s'assurer que la colonne A ne contienne que
des noms d'onglets :

Private Sub Worksheet_Activate()
Dim F As Worksheet
Dim i As Integer
Range("A:A").ClearContents
For Each F In ActiveWorkbook.Worksheets
i = i + 1
Cells(i, 1) = F.Name
Next F
End Sub


Serge



"garnote"
Salut,

Peut-être aussi, en supposant que la colonne A ne
contienne rien d'autre que des noms d'onglets :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 And Not IsEmpty(Target) Then _
Sheets(Target.Value).Activate
End Sub

Private Sub Worksheet_Activate()
Dim F As Worksheet
Dim i As Integer
For Each F In ActiveWorkbook.Worksheets
i = i + 1
Cells(i, 1) = F.Name
Next F
End Sub

Serge


"deedooz"
Bonjour,
Sur l'onglet (Feuil1) j'ai plusieurs lignes avec du texte (A1:A56)
En fait, les 56 lignes correspondent aux 56 onglets de mon classeur.
Le nom de ces classeurs etant amené a évoluer (ainsi que leur nombre), je
voudrais ecrire en VBA un genre de lien hypertexte qui aurait pour action
simple de m'envoyer sur l'onglet Feuil2 lorsque je clique sur la cellule A2 ;
de m'envoyer sur l'onglet Feuil8 lorsque je clique sur la cellule A8, ...
J'espere avoir été assez clair dans ma demande.
Merci






Pounet95
Le #18512611
Bonsoir,
J'utilise Windows Mail ( sous Vista ) pour interroger ( voire répondre
quelqufois ) le forum.
Ce jour, oh surprise, je vois dans la colonne nommée Rang ( en fait une
médaille vide ! ), ton message avec une médaille dans laquelle est inscrite
le chiffre 3 et qui quand je passe la souris dessus m'affiche Bronze.

Comment cela ce fait-ce ????????? Quel en en est le "spliquement" ?

Pounet95

"FFO" news:
Salut à toi
Ce code devrait convenir :

For i = 1 To Sheets.Count
If Sheets(i).Name <> "Feuil1" Then
Sheets("Feuil1").Hyperlinks.Add Anchor:=Range("A" & i),
Address:="",
SubAddress:= _
"" & Sheets(i).Name & "!A1", TextToDisplay:="" & Sheets(i).Name &
"!A1"
End If
Next

Dis Moi !!!!!



FFO
Le #18513051
Salut à toi

Tu cliques sur la médaille et tu auras tous les "spliquement"

Je n'ai rien demandé c'est venu tout seul

Ce n'est qu'un macaron pas de quoi s'émerveiller !!!!!
Pounet95
Le #18513301
Oh ce n'est pas de l'émerveillement ! Juste un brin de curiosité ....
Quant au clic dessus , a priori, on n'y voit que la réponse faite, sans
rappel du message auquel il est répondu.
Incident clos :o)))))

Pounet95

"FFO" news:
Salut à toi

Tu cliques sur la médaille et tu auras tous les "spliquement"

Je n'ai rien demandé c'est venu tout seul

Ce n'est qu'un macaron pas de quoi s'émerveiller !!!!!



FFO
Publicité
Poster une réponse
Anonyme