Caractères accentués

Bonjour,

Je n'arrive pas à obtenir des caractères accentués correctement orthographiés dans Yahoo Mail

Si j'utilise ce codage, c'est OK dans ma messagerie d'envoie et pour la réception dans GMAIL

Caractères accentués : éèçàùôï

Message = "Bonjour <br /> Caractères accentués : éèçàùôï"

Set mMessage = CreateObject("CDO.Message")

With mMessage

Set .Configuration = mConfig

.To = wListDestClair ' .To = Destinataire

.From = "tresoriersc@zoho.com"

.CC = "" ' DestinataireCopy

.BCC = wListDestCache ' .BCC = "" ' DestinataireCopyCacher

.Subject = Sujet

.HTMLBody = Message ' .TextBody = Message

If Fichier <> "" Then .AddAttachment Fichier

.Send

End With

Par contre, c'est faux dans YAHOO MAIL

Caract�res accentu�s : �������

Comment faire ?

Cordialement

Sauveur

Bonjour,

comme tu es en htmlbody, il faut adopter l'écriture en html

par exemple é s'écrit &eacute; ou bien &#233;

soit tu fais une table, soit tu utilises une fonction comme celle-ci

Function texthtml(texte As String)
    texthtml = ""
    For i = 1 To Len(texte)
        Select Case Asc(Mid(texte, i, 1))
        Case Is > 127
            texthtml = texthtml & "&#" & Application.Trim(Str(Asc(Mid(texte, i, 1)))) & ";"
        Case Else
            texthtml = texthtml & Mid(texte, i, 1)
        End Select
    Next
End Function

et tu fais

.HTMLBody = texthtml(Message)

Bonjour,

Merci bien

Quand j'utilise .TextBody au lieu de htmlbody

.TextBody = Message

J'ai la même anomalie

Pourquoi ?

parce que textbody ne prend en compte que les 128 premiers ascii

est-ce que la solution proposée fonctionne ?

Oui, la fonction marche très bien

Je retrouve bien les caractères accentués, que ce soit dans YAHOO MAIL, GMAIL ou ma messagerie d'envoi

Mais je perd les sauts de lignes !

J'envoi à la fonction le contenu de ma TextBox

Mais je perd les sauts de ligne, tout le contenu de la TextBox est mis sur une seule ligne

Je débrouille pour convertir les lignes une à une, et ensuite les assembler en insérant entre elle <BR />, soit une autre idée ?

Encore merci

J'ai trouvé !

TextBox.Text = Replace(TextBox.Text, vbCrLf, "<br />")

Tout marche très bien !!

Ah ben tu m'avais pas tout dit !

voici le complément ...

Function texthtml(texte As String)
    texthtml = ""
    For i = 1 To Len(texte)
        Select Case Asc(Mid(texte, i, 1))
        Case Is = 10
            texthtml = texthtml & "<br/>"
        Case Is = 39
            texthtml = texthtml & "&#" & Application.Trim(Str(Asc(Mid(texte, i, 1)))) & ";"
        Case Is > 127
            texthtml = texthtml & "&#" & Application.Trim(Str(Asc(Mid(texte, i, 1)))) & ";"
        Case Else
            texthtml = texthtml & Mid(texte, i, 1)
        End Select
    Next
End Function

Super !

Encore une fois merci

Rechercher des sujets similaires à "caracteres accentues"