PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Lien hypertexte d'une forme VBA Excel ?
Lien hypertexte d'une forme VBA Excel ?
Iniciado por obtuli, 21,jul. 2020 15:47 - 1 respuesta
Miembro registrado
961 mensajes
Publicado el 21,julio 2020 - 15:47
Bonjour,

J'essaie d'ajouter une méthode à la classe CExcel.

Dans un fichier Excel, il y a une forme (qui ressemble à un bouton), quand je clique sur cette forme je vais sur un autre onglet dans la case A1.
Quand je passe le souris sur cette forme je vois : file:///nom du fichier Excel - LISTE!A1 (LISTE étant le nom de l'onglet sur lequel pointe la forme)

J'essaie de modifier ce lien par programme, mais ça ne marche pas :

Dans le code la forme est bien sélectionnées.

:m_pautExcel>>ActiveSheet>>Shapes(sRefForme)>>Select()
:m_pautExcel>>ActiveWorkbook>>ActiveSheet>>Shapes(sRefForme)>>Hyperlink>>Address = "#LISTE2!B6"


C'est peut-être un problème de syntaxe, avec "#LISTE2!B6" , rien n'est modifié par rapport au lien d'origine !

mais avec par exemple "LISTE2!B6 (sans le #) le lien affiché par la souris devient :
file:///LISTE2!B6 - LISTE!A1 , le nom du fichier change mais pas la cellule où la forme doit pointer.

Avez vous une idée ?

merci !

OB
Miembro registrado
961 mensajes
Publicado el 21,julio 2020 - 16:43
En fait il y a deux niveaux, dont SubAddress qui permet de désigner la destination dans une feuille.

Pour info sRefForme est le nom de la forme (par exemple "Rectangle à coins arrondis 9")

:m_pautExcel>>ActiveWorkbook>>ActiveSheet>>Shapes(sRefForme)>>Hyperlink>>SubAddress = "#LISTE2!B6"
//Pour modifier le libellé de cette forme
//:m_pautExcel>>ActiveWorkbook>>ActiveSheet>>Shapes(sRefForme)>>TextFrame>>Characters>>Text = "LIEN LISTE"