[excel] lien hypertexte
Fermé
tonyparker09
Messages postés
8
Date d'inscription
vendredi 3 mars 2006
Statut
Membre
Dernière intervention
6 mars 2006
-
3 mars 2006 à 16:13
Jeff - 24 mai 2008 à 09:10
Jeff - 24 mai 2008 à 09:10
A voir également:
- [excel] lien hypertexte
- Lien url - Guide
- Liste déroulante excel - Guide
- Créer un lien pour partager des photos - Guide
- Si et excel - Guide
- Verifier un lien - Guide
4 réponses
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
3 mars 2006 à 16:28
3 mars 2006 à 16:28
Hello tonyparker09,
En supposant que ton lien hypertexte cible la cellule D3 de ta feuille Feuil2.
Dans le code VBA de cette feuille, tu peux mettre ce genre de macros :
Est-ce que c'est bien ça que tu veux ?
N.B. La cellule se colore quand la feuille s'active, que tu y viennes par ton lien ou en cliquant sur l'onglet de la feuille.
En supposant que ton lien hypertexte cible la cellule D3 de ta feuille Feuil2.
Dans le code VBA de cette feuille, tu peux mettre ce genre de macros :
Private Sub Worksheet_Activate() Me.Range("D3").Interior.ColorIndex = 3 End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Me.Range("D3").Interior.ColorIndex = 0 End SubQuand tu arrives sur Feuil2 via ton lien, la cellule ciblée se colore en rouge. Ensuite, dès que la sélection change, la coloration disparait.
Est-ce que c'est bien ça que tu veux ?
N.B. La cellule se colore quand la feuille s'active, que tu y viennes par ton lien ou en cliquant sur l'onglet de la feuille.
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
3 mars 2006 à 16:44
3 mars 2006 à 16:44
Dans l'explorateur de Projet VBA, tu fais un double clic sur le nom de la feuille concernée. Dans la lucarne de droite, tu colles les macros, en adaptant la référence de la cellule. C'est tout.
tonyparker09
Messages postés
8
Date d'inscription
vendredi 3 mars 2006
Statut
Membre
Dernière intervention
6 mars 2006
3 mars 2006 à 16:56
3 mars 2006 à 16:56
merci pour ta réponse ca avance petit a petit!
en fait quand je clique sur mon lien ca m'amène a la deuxième feuille dans la case voulue..cette case etait bleu a l'origine et du coup la couleur ne change pas.par contre quand je me déplace dans une autre case de cette feuile 2 alors la case devient blanche
y aurait il un moyen pour que la case devienne noire quand on arrive dessus puis quand on la quitte elle reprend sa couleur intiale? (au fait comment fait on pour savoir quel chiffre correspond à quelle couleur? y a t il un assistant pour ca?)
si jamais tu n'as plus le temps de repondre encore merci!
en fait quand je clique sur mon lien ca m'amène a la deuxième feuille dans la case voulue..cette case etait bleu a l'origine et du coup la couleur ne change pas.par contre quand je me déplace dans une autre case de cette feuile 2 alors la case devient blanche
y aurait il un moyen pour que la case devienne noire quand on arrive dessus puis quand on la quitte elle reprend sa couleur intiale? (au fait comment fait on pour savoir quel chiffre correspond à quelle couleur? y a t il un assistant pour ca?)
si jamais tu n'as plus le temps de repondre encore merci!
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
3 mars 2006 à 18:06
3 mars 2006 à 18:06
Re,
quand je clique sur mon lien ca m'amène a la deuxième feuille dans la case voulue
OK. C'est bien l'adresse de cette cellule qu'il faut adapter dans les 2 macros (donc 2 endroits).
Dans la première macro, on indique la couleur que doit prendre la cellule quand on arrive sur la feuille,
dans la seconde, la couleur que doit reprendre la cellule ensuite.
Pour indiquer la couleur, plusieurs façons :
1) Utiliser l'indice de la couleur ColorIndex. Les valeurs ? Rien=0, Noir=1, Rouge=3, Bleu=5 etc. Pour connaître la valeur, un moyen simple est de lancer l'enregistreur de macro, d'activer une couleur, de stopper l'enregistrement, et de regarder le code généré.
2) Utiliser non plus ColorIndex, mais Color tout court. VBA connaît un certain nombre de constantes de couleurs qu'on peut utiliser, par exemple :
Range("A1").Interior.Color = vbBlue
(vbBlue=bleu, vbRed=rouge, vbBlack=noir, etc...)
3) Utiliser la fonction RGB (Red, Green, Blue) avec laquelle on indique les intensités des composantes de couleur Rouge, Vert, Bleu.
Range("A1").Interior.Color = RGB(0, 0, 255) donne aussi du bleu.
Vérifie tout ça, et adapte à ton cas...
quand je clique sur mon lien ca m'amène a la deuxième feuille dans la case voulue
OK. C'est bien l'adresse de cette cellule qu'il faut adapter dans les 2 macros (donc 2 endroits).
Dans la première macro, on indique la couleur que doit prendre la cellule quand on arrive sur la feuille,
dans la seconde, la couleur que doit reprendre la cellule ensuite.
Pour indiquer la couleur, plusieurs façons :
1) Utiliser l'indice de la couleur ColorIndex. Les valeurs ? Rien=0, Noir=1, Rouge=3, Bleu=5 etc. Pour connaître la valeur, un moyen simple est de lancer l'enregistreur de macro, d'activer une couleur, de stopper l'enregistrement, et de regarder le code généré.
2) Utiliser non plus ColorIndex, mais Color tout court. VBA connaît un certain nombre de constantes de couleurs qu'on peut utiliser, par exemple :
Range("A1").Interior.Color = vbBlue
(vbBlue=bleu, vbRed=rouge, vbBlack=noir, etc...)
3) Utiliser la fonction RGB (Red, Green, Blue) avec laquelle on indique les intensités des composantes de couleur Rouge, Vert, Bleu.
Range("A1").Interior.Color = RGB(0, 0, 255) donne aussi du bleu.
Vérifie tout ça, et adapte à ton cas...
tonyparker09
Messages postés
8
Date d'inscription
vendredi 3 mars 2006
Statut
Membre
Dernière intervention
6 mars 2006
6 mars 2006 à 10:24
6 mars 2006 à 10:24
salut!
merci pour ta réponse de vendredi..je n'ai pas internet chez moi donc impossible de te répondre avant
en fait j'ai plusieurs liens m'envoyant à différentes cellules de la meme feuille, ces cellule pouvant me renvoyer sur la feuille du début...quand je suis sur ces cellule j'aimerai qu'elle soit d'un couleur spéciale puis quand je quitte ces cellules qu'elles redeviennent de la meme couleur qu'elles etaient avant...si ca se trouve tu m'as donné la reponse, alors je n'ai pas compris désolé!
encore merci pour ton aide
merci pour ta réponse de vendredi..je n'ai pas internet chez moi donc impossible de te répondre avant
en fait j'ai plusieurs liens m'envoyant à différentes cellules de la meme feuille, ces cellule pouvant me renvoyer sur la feuille du début...quand je suis sur ces cellule j'aimerai qu'elle soit d'un couleur spéciale puis quand je quitte ces cellules qu'elles redeviennent de la meme couleur qu'elles etaient avant...si ca se trouve tu m'as donné la reponse, alors je n'ai pas compris désolé!
encore merci pour ton aide
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
6 mars 2006 à 12:17
6 mars 2006 à 12:17
Salut,
OK, je comprends mieux. Je pensais que chacun de tes liens pointaient sur des feuilles différentes, et non pas sur des diverses cellules d'une même feuille.
Je peux te proposer quelque chose, et si quelqu'un a mieux je suis preneur.
Dans mon test, j'ai :
- dans Feuil1 : les liens hypertextes
- dans Feuil2 : les cellules sur lesquelles pointent ces liens (chacune d'une couleur différente)
J'utilise une feuille Feuil3 pour y stocker :
- le numéro de ligne d'une cellule (en B1)
- son numéro de colonne (en B2)
- sa couleur (en B3)
Dans le code VBA de la feuille qui contient les liens, j'ai :
Essaie d'adapter à ton cas, et dis-moi si ça te va...
OK, je comprends mieux. Je pensais que chacun de tes liens pointaient sur des feuilles différentes, et non pas sur des diverses cellules d'une même feuille.
Je peux te proposer quelque chose, et si quelqu'un a mieux je suis preneur.
Dans mon test, j'ai :
- dans Feuil1 : les liens hypertextes
- dans Feuil2 : les cellules sur lesquelles pointent ces liens (chacune d'une couleur différente)
J'utilise une feuille Feuil3 pour y stocker :
- le numéro de ligne d'une cellule (en B1)
- son numéro de colonne (en B2)
- sa couleur (en B3)
Dans le code VBA de la feuille qui contient les liens, j'ai :
Private Sub Worksheet_Activate() Sheets("Feuil3").Cells(1, 2).Value = ActiveCell.Row Sheets("Feuil3").Cells(2, 2).Value = ActiveCell.Column Sheets("Feuil3").Cells(3, 2).Value = ActiveCell.Interior.ColorIndex ActiveCell.Interior.ColorIndex = 3 End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Cells(Sheets("Feuil3").Cells(1, 2).Value, Sheets("Feuil3").Cells(2, 2).Value).Interior.ColorIndex = Sheets("Feuil3").Cells(3, 2).Value End SubPour moi ça colle.
Essaie d'adapter à ton cas, et dis-moi si ça te va...
tonyparker09
Messages postés
8
Date d'inscription
vendredi 3 mars 2006
Statut
Membre
Dernière intervention
6 mars 2006
6 mars 2006 à 13:11
6 mars 2006 à 13:11
merci pour ta reponse je vais essayer de tester ca...c pas gagner mais je vais y arriver y'a pas de raisons !
Salut tu as l'air trop fort !
Moi mon problème est le suivant :
J'ai fait un listing et quand je clique sur le nom le lien m'envoie à la photo et vice versa.
mais je voudrai que le lien devienne en couleur ou que le tour du lien soit en couleur.
j'aimerai le cas oule listing et les photos sont sur la même page ou sur une deuxième page.
et savoir si un lien peut me renvoyer à plusieurs photos (ex: monsieur madame et moto)
merci si tu peux me dépanner
Moi mon problème est le suivant :
J'ai fait un listing et quand je clique sur le nom le lien m'envoie à la photo et vice versa.
mais je voudrai que le lien devienne en couleur ou que le tour du lien soit en couleur.
j'aimerai le cas oule listing et les photos sont sur la même page ou sur une deuxième page.
et savoir si un lien peut me renvoyer à plusieurs photos (ex: monsieur madame et moto)
merci si tu peux me dépanner
3 mars 2006 à 16:36
le problème c'est que je suis un quiche en programmation
j'ai fait un simple copier coller dans mon code et j'ai juste changé le nom de la cellule et rien ne se passe..j'ai du faire une erreur..je vais réessayer
encore merci !