Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/02/2011, 11h49   #1
Invité de passage
 
Stéphane Combet
Inscription : juillet 2010
Messages : 6
Détails du profil
Informations personnelles :
Nom : Stéphane Combet

Informations forums :
Inscription : juillet 2010
Messages : 6
Points : 2
Points : 2
Par défaut Word >>> Outlook : Lien hypertexte avec caractères spéciaux par VBA

Bonjour,

malgré quelques recherches je n'ai pas trouvé de réponse à mon problème pour l'instant.

J'ai fait une macro permettant depuis Word de générer un mail Outlook avec le lien sur un réseau local du document actif.
Seulement j'utilise la balise href en html. Et si les répertoires locaux contiennent des caractères spéciaux (espaces, accents...) cela ne marche plus.

Y-a-t-il un autre moyen de créer un lien hypertexte dans un objet "mail" ? Piloter par exemple 'insertion/lien hypertexte' ?...

Merci pour votre aide !

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Sub MailPourVerif()
 
'Pour que ce code fonctionne il faut activer les références Microsoft Scripting Runtime & Microsoft Outlook Library
 
If Not ExistenceFichier(ActiveDocument) Then
MsgBox "Please save the document before."
Exit Sub
End If
 
    Dim ol As New Outlook.Application
    Dim olmail As MailItem
    Dim CurrFile As String
    Dim strBody As String
    Dim oFSO As Scripting.FileSystemObject
    Dim oFl As Scripting.File
    Dim oTxt As Scripting.TextStream
 
 
    Set ol = New Outlook.Application
 
    intro = "Here is a link to the document we want to send : "
    strBody = "<A HREF=" & ActiveDocument.Path & "\" & ActiveDocument.Name & ">" & ActiveDocument.Path & "\" & ActiveDocument.Name & "</A>"
    conclu = ". Click on the link to read and edit the document in Word. You'll have access to commands ""Save and rename old"" and ""Send by e-mail""."
 
    Set olmail = ol.CreateItem(olMailItem)
    With olmail
        .HTMLBody = intro & strBody & conclu
        .BodyFormat = olFormatHTML
        .Display
    End With
 
 
End Sub
 
Function ExistenceFichier(ByVal sFichier) As Boolean
  ExistenceFichier = Dir(sFichier) <> ""
End Function
pgtsdvl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2011, 16h40   #2
Invité de passage
 
Stéphane Combet
Inscription : juillet 2010
Messages : 6
Détails du profil
Informations personnelles :
Nom : Stéphane Combet

Informations forums :
Inscription : juillet 2010
Messages : 6
Points : 2
Points : 2
Par défaut Replace(link, " ", "%20")

Oulà, j'avais oublié, c'est résolu ça...

Bin oui j'ai appris des trucs en html pour faire mon lien hypertexte en vba :

Certains caractères spéciaux (espace par exemple) ont un "code" de remplacement ("%20" par exemple).

Donc un petit Replace(link, " ", "%20") et ça roule !

Merci Wikipédia.
pgtsdvl est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h43.


 
 
 
 
Partenaires

Hébergement Web