Line hypertexte adresse & objet simultanément

Bonjour,

Présentement j'ai une liste de courriels en lien hypertexte. Je peux donc facilement cliquer sur le lien et envoyer rapidement un courriel. J'ai aussi ajouté dans la section objet un libellé que je souhaite retrouver en objet à chaque fois que j'envoie un courriel.

Mon problème c'est que le texte qui figure dans la section objet peut être appelé à changer et j'aimerais que les utilisateurs du fichier n'ait pas à aller modifier le texte dans «modification de l'hyperlien». J'aimerais que l'objet du courriel représente le texte qui figure dans une cellule de mon fichier excel.

Exemple présentement :
Adresse de messagerie : ***@***
Objet : Exemple

Ce que je voudrais
Adresse de messagerie : ***@***
Objet : Texte de la cellule A1

Dans ces exemples, l'adresse ***@*** est déjà en lien hypertexte !

Que faire !!

2 réponses

  1. Contributeur
    Je crains qu'il ne te faille passer par VBA ...
    0
    1. Contributeur
      Bonjour,

      Comme te l'a dit Raymond, que je salue, il faut passer par un code en vba.

      Faire Alt F11 pour accéder à l'éditeur. ensuite sélectionner la feuille concernée en haut à gauche.
      Dans cet exemple tous les liens sont dans la colonne A, il suffit avant de faire un clic gauche sur le lien, de faire un clic droit pour changer l'Objet du mail qui se trouve en A1:

      Option Explicit
      Dim adressemail, val As String
      Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
      If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
      adressemail = Target.Value
      extractionMots
      adressemail = Replace(adressemail, val, Range("A1"))
      Target.Value = adressemail
      Selection.Hyperlinks(1).Address = adressemail
      End If
      End Sub
      'Extraire les données séparées par un = dans une chaine de caractères
      Sub extractionMots()
          Dim Tableau() As String
          Dim i As Integer
          On Error Resume Next
          'découpe la chaine en fonction des  "="
          'le résultat de la fonction Split est stocké dans un tableau
          Tableau = Split(adressemail, "=")
          
          'boucle sur le tableau pour visualiser le résultat
          For i = 0 To UBound(Tableau)
              'Le résultat s'affiche dans la fenêtre d'execution de l'éditeur de macros
              Debug.Print Tableau(i)
          Next i
          val = Tableau(1)
      End Sub
      


      0