Excel - VBA- lire un lien hypertexte
Résolu
Diana74
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Diana74 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Diana74 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
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
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
A voir également:
- Excel - VBA- lire un lien hypertexte
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Créer un lien pour partager des photos - Guide
- Lire un fichier epub - Guide
- Lien url - Guide
- Liste déroulante excel - Guide
5 réponses
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
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
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 !
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 !
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.
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.
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.
la macro est arreter qd à la ligne onglet.Range(b3).select. Mais je vois pas pourquoi.
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
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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question