MarcoOoOoOo
XLDnaute Nouveau
Bonjour,
Je supervise un planning edité sous excel.
Dans chaque cellule, il y a 3 mots dont le dernier et un nombre de 4 chiffres qui est une reference à une page php.
Au debut je créais des liens en utilisant la methode manuelle clic droit / hyperlink / ... Hors lorsque je supprimais un colonne de ce planning pour la coller sur un planning archive, j'ai commencé à avoir des liens qui se déplaçaient sur d'autres cellules. En cherchant sur le net, j'ai trouvé qu'une solution etait de remplacer les liens créés manuellement par une formule du style [=HYPERLINK("liens";"message_a_afficher")]. J'ai décidé de créer un bouton qui me permettrait de convertir le texte que je rentre dans le cellule en formule HYPERLINK pour simplifier la chose.
J'en suis arrivé à la macro suivante:
======================================================
Private Sub CommandButton1_Click()
Dim link As String
Dim display As String
link = "http://URL_fixe" & Right(ActiveCell.Text, 4)
display = ActiveCell.Text
ActiveCell.Formula = "=HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
End Sub
======================================================
- link corresponds au texte fixe de mon URL
- Right(ActiveCell.Text, 4) me donne la reference à rajouter à l'URL
- display recupere le texte de la cellule que je veux garder en affichage
Malgré mes multiples recherches sur Google, je n'arrive pas à faire fonctionner ce script. J'obtiens l'erreur:
================================
Runtime Error '1004':
Application-defined or object-defined error
================================
Il fonctionne lorsque j'enleve le "=" de devant HYPERLINK. Mais du coup je dois le rajouter à la main afin que le lien fonctionne.
J'ai aussi essayé les syntaxes suivantes:
=============================================
ActiveCell.Formula = "=" & "HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
ou
ActiveCell.Formula = Chr(61) & "HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
=============================================
Mais meme resultat.
J'ai besoin d'un coup de main, mes connaissances VBA étant limitées ...
Merci d'avance,
MarcoOoOoOo
Je supervise un planning edité sous excel.
Dans chaque cellule, il y a 3 mots dont le dernier et un nombre de 4 chiffres qui est une reference à une page php.
Au debut je créais des liens en utilisant la methode manuelle clic droit / hyperlink / ... Hors lorsque je supprimais un colonne de ce planning pour la coller sur un planning archive, j'ai commencé à avoir des liens qui se déplaçaient sur d'autres cellules. En cherchant sur le net, j'ai trouvé qu'une solution etait de remplacer les liens créés manuellement par une formule du style [=HYPERLINK("liens";"message_a_afficher")]. J'ai décidé de créer un bouton qui me permettrait de convertir le texte que je rentre dans le cellule en formule HYPERLINK pour simplifier la chose.
J'en suis arrivé à la macro suivante:
======================================================
Private Sub CommandButton1_Click()
Dim link As String
Dim display As String
link = "http://URL_fixe" & Right(ActiveCell.Text, 4)
display = ActiveCell.Text
ActiveCell.Formula = "=HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
End Sub
======================================================
- link corresponds au texte fixe de mon URL
- Right(ActiveCell.Text, 4) me donne la reference à rajouter à l'URL
- display recupere le texte de la cellule que je veux garder en affichage
Malgré mes multiples recherches sur Google, je n'arrive pas à faire fonctionner ce script. J'obtiens l'erreur:
================================
Runtime Error '1004':
Application-defined or object-defined error
================================
Il fonctionne lorsque j'enleve le "=" de devant HYPERLINK. Mais du coup je dois le rajouter à la main afin que le lien fonctionne.
J'ai aussi essayé les syntaxes suivantes:
=============================================
ActiveCell.Formula = "=" & "HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
ou
ActiveCell.Formula = Chr(61) & "HYPERLINK(" & CStr(link) & "," & CStr(display) & ")"
=============================================
Mais meme resultat.
J'ai besoin d'un coup de main, mes connaissances VBA étant limitées ...
Merci d'avance,
MarcoOoOoOo