Rechercher : dans
Par :

Excel - VBA- lire un lien hypertexte

Dernière réponse le 19 mai 2009 à 10:44:59 Diana74, le 18 mai 2009 à 18:09:33 
 Signaler ce message aux modérateurs

Bonjour,

Petit souci bien ennuyeux pour programmation excel.

Voici le "contexte" :
A l'origine j'avais un tableau Excel dont une colonne XYJ avec les valeur allant de A à Z.
J'ai créer des onglets de A à Z, et dans le premier onglet j'ai créer les liens hypertextes correspondant.

Maintenant je souhaiterai faire la macro suivante :
Selectionner la cellule A.
Copier son contenu (donc) A.
Aller dans l'onglet A.
Copier "A" dans la cellule C3.

Puis passer à B

ce qui donne cela en manuel :

Range("B6").Select
Selection.Copy
Range("B6").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Range("C3").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

J'ai donc modifier les "range()" en cells(i,y) et fait une boucle sur le i le y=2.
la copie semble se faire. Mais, pour moi il ne vas pas dans l'onglet et donc ne colle pas.

Pouvez vous m'aidez ? Je suis sur Office 2003.

Merci d'avance.

Diana

Configuration: Windows XP
Firefox 3.0.10

Meilleures réponses pour « Excel VBA lire un lien hypertexte » dans :
[PHP] Transformer une URL en lien hypertexte cliquable VoirGrâce aux expressions régulières, il est possible de transformer en lien hypertexte toute URL de la forme http://URL (ou ftp://URL) ou bien commençant par www. :
[Word] Supprimer tous les liens hypertextes VoirLorsque vous copiez-collez un extrait d'une page web, vous risquez fort d'obtenir dans le texte de nombreux liens hypertextes. Voici deux solutions pour supprimer les liens hypertextes d'un document Word. 1° solution : un lien hypertexte à la...
Problème pour ouvrir les liens dans Outlook VoirSi Outlook est dans l'impossibilité d'ouvrir un lien hypertexte, ou si les liens dans les messages ouvrent l'explorateur sans charger la page Web, il suffit de suivre l'une des procédures suivantes : Méthode 1 Méthode 2 Méthode 3 Pour...

1

thev, le 18 mai 2009 à 19:19:26

Range("B6").Select
Selection.Copy
Range("B6").Select
lien = Selection.Hyperlinks(1).SubAddress
Set onglet = Range(lien).Worksheet
onglet.Range("C3").Select

Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

Répondre à thev

2

Diana74, le 18 mai 2009 à 20:10:50

Range("B6").Select
Selection.Copy
Range("B6").Select
lien = Selection.Hyperlinks(1).SubAddress
Set onglet = Range(lien).Worksheet
onglet.Range("C3").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False

le terme "lien" est une commande VBa ?
Je débute, donc j'aidumalà tout saisir :)
Mais la commande que tu donne permet d'aller directement C3 à la case de l'onglet que j'aurai "cliquer" via le VBA ?

Merki merki !

Répondre à Diana74

3

thev, le 18 mai 2009 à 22:15:22

Lien est une variable adresse qui représente l'adresse contenue dans l'hyperlien de la cellule B6.
onglet est une variable objet qui représente la feuille à laquelle fait référence l'hyperlien de la cellule B6.
voici ce que signifie le code ci-dessus :

1- sélection sur la feuille active de la cellule B6 où se trouve un hyperlien
2- copie de cette cellule
3- sélection de cellule C3 se trouvant dans la feuille référencée par l'hyperlien
4- collage de la cellule source B6 sur la cellule destinataire C3


je ne sais pas si cela répond à ton problème mais c'est ce que j'en ai compris.

Répondre à thev

4

Diana74, le 19 mai 2009 à 08:26:33

Je comprends ce que ca devrai faire, mais ca ne fait pas :( !
la macro est arreter qd à la ligne onglet.Range(b3).select. Mais je vois pas pourquoi.

Répondre à Diana74

5

thev, le 19 mai 2009 à 09:47:24

C'est sans doute que la variable lien est vide car il n'y a pas pas d'hyperlien sur la cellule B6 de ta feuille de départ.
A vérifier en introduisant une instruction "stop" et en positionnant le curseur de la souris sur la varaible lien pour voir son contenu.
lien = Selection.Hyperlinks(1).SubAddress
STOP
Set onglet = Range(lien).Worksheet

Répondre à thev

6

 Diana74, le 19 mai 2009 à 10:44:59

Ayant créer le lien hypertexte et lorsque je clique dessus je vais vais bien dans mon onglet, comment ne peux t'il pas y avoir de lien hypertexte ?

Répondre à Diana74
Collection CommentÇaMarche.net