OVH Cloud OVH Cloud

Retour à la ligne

9 réponses
Avatar
Franck
Bonjour,

J'ai une variable Msg qui est du texte (=E0 afficher dans un=20
mail Eudora)

Par exemple :=20

Msg =3D"Bonjour, comment allez vous ?"

Comment faire pour faire en sorte d'ins=E9rer un retour =E0 la=20
ligne apr=E8s "Bonjour," dans le code VB?

Chr(10) ne fonctionne pas, ni vbNewLine, ni vbCrLf, ni vbLf

Merci de votre aide

9 réponses

Avatar
Pascal B.
J'ai jamais testé, mais essaye quand-même ceci:

Msg = "Bonjour, <BR> Comment allez-vous ?"

<BR> est une balise HTML qui renvoi à la ligne.

Pascal


"Franck" a écrit dans le message de
news:1ac301c3e01a$c9853e30$
Bonjour,

J'ai une variable Msg qui est du texte (à afficher dans un
mail Eudora)

Par exemple :

Msg ="Bonjour, comment allez vous ?"

Comment faire pour faire en sorte d'insérer un retour à la
ligne après "Bonjour," dans le code VB?

Chr(10) ne fonctionne pas, ni vbNewLine, ni vbCrLf, ni vbLf

Merci de votre aide
Avatar
Franck
non, ça ne marche pas


-----Message d'origine-----
J'ai jamais testé, mais essaye quand-même ceci:

Msg = "Bonjour, <BR> Comment allez-vous ?"

<BR> est une balise HTML qui renvoi à la ligne.

Pascal


"Franck" a écrit dans le


message de
news:1ac301c3e01a$c9853e30$
Bonjour,

J'ai une variable Msg qui est du texte (à afficher dans


un
mail Eudora)

Par exemple :

Msg ="Bonjour, comment allez vous ?"

Comment faire pour faire en sorte d'insérer un retour à


la
ligne après "Bonjour," dans le code VB?

Chr(10) ne fonctionne pas, ni vbNewLine, ni vbCrLf, ni


vbLf

Merci de votre aide




.



Avatar
Thierry M.
Pascal B. <panthere_rose_AROBASEhotmailPOINTcom> écrivait:

Msg = "Bonjour, <BR> Comment allez-vous ?"



grrrrrr et vous même ?

<BR> est une balise HTML qui renvoi à la ligne.



dans un message HTML, mais en source alors ...

sinon, chr(10) c'est bien le retour ligne, mais
il ya aussi le chr(13) paragraphe et le
retour chariot chr(10) & chr(13)

--
Thierry MARTIN
Forums Réunion (dont parapente)
http://ardf.free.fr/forums/
Avatar
Franck
J'ai l'impression

que Chr(10) --> vbLf
Chr(13) + Chr(10) --> vbCrLf

ne fonctionnent que dans une Msg Box par exemple, mais pas
dans du texte...

:-(

pas glop, pas glop


-----Message d'origine-----
Pascal B. <panthere_rose_AROBASEhotmailPOINTcom> écrivait:

Msg = "Bonjour, <BR> Comment allez-vous ?"



grrrrrr et vous même ?

<BR> est une balise HTML qui renvoi à la ligne.



dans un message HTML, mais en source alors ...

sinon, chr(10) c'est bien le retour ligne, mais
il ya aussi le chr(13) paragraphe et le
retour chariot chr(10) & chr(13)

--
Thierry MARTIN
Forums Réunion (dont parapente)
http://ardf.free.fr/forums/

.



Avatar
François Picalausa
Bonjour/soir,

Essaye ceci:
'Text1 est une textbox multiline = true

Private Sub Command1_Click()
MsgBox "Bonjour" & vbCrLf & "Comment allez-vous?"
Text1.Text = "Bonjour" & vbCrLf & "Comment allez-vous?"

'fonctionne aussi avec vbNewLine:
'MsgBox "Bonjour" & vbNewLine & "Comment allez-vous?"
'Text1.Text = "Bonjour" & vbNewLine & "Comment allez-vous?"
End Sub

Attention que la concaténation ne doit pas se faire par le signe plus:
Si Chr(13) + Chr(10) fonctionne, Chr(13) & Chr(10) est plus correct car il
utilise l'opérateur prévu à cet effet!
Faire aussi attention que Chr(x) est nettement plus lent que Chr$(x).
Donc, il vaudrait mieux écrire:
Chr$(13) & Chr$(10)

Ou passer par la constante vbNewLine/vbCrLf , ce qui évite de devoir
recalculer la valeur de l'expression!

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le message de
news:1b0201c3e01f$9cb23ac0$
J'ai l'impression

que Chr(10) --> vbLf
Chr(13) + Chr(10) --> vbCrLf

ne fonctionnent que dans une Msg Box par exemple, mais pas
dans du texte...


Avatar
Franck
Oui, le problème c'est que moi je ne passes PAS par une
Msgbox

Je veux que ma variable Msg="bla bla bla" soit formatée
avec des retour à la ligne

Je rappelle que le contenu de Msg va ensuite s'afficher
dans un mail


-----Message d'origine-----
Bonjour/soir,

Essaye ceci:
'Text1 est une textbox multiline = true

Private Sub Command1_Click()
MsgBox "Bonjour" & vbCrLf & "Comment allez-vous?"
Text1.Text = "Bonjour" & vbCrLf & "Comment allez-


vous?"

'fonctionne aussi avec vbNewLine:
'MsgBox "Bonjour" & vbNewLine & "Comment allez-vous?"
'Text1.Text = "Bonjour" & vbNewLine & "Comment allez-


vous?"
End Sub

Attention que la concaténation ne doit pas se faire par


le signe plus:
Si Chr(13) + Chr(10) fonctionne, Chr(13) & Chr(10) est


plus correct car il
utilise l'opérateur prévu à cet effet!
Faire aussi attention que Chr(x) est nettement plus lent


que Chr$(x).
Donc, il vaudrait mieux écrire:
Chr$(13) & Chr$(10)

Ou passer par la constante vbNewLine/vbCrLf , ce qui


évite de devoir
recalculer la valeur de l'expression!

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le


message de
news:1b0201c3e01f$9cb23ac0$
J'ai l'impression

que Chr(10) --> vbLf
Chr(13) + Chr(10) --> vbCrLf

ne fonctionnent que dans une Msg Box par exemple, mais




pas
dans du texte...




.



Avatar
François Picalausa
Bonjour/soir,

L'exemple utilisant le textbox ne passe PAS non plus par une messagebox ;-)
Je l'avoue, j'avais lu un peu vite :-)

Mais peut-être qu'Eudora préfère des rn comme il est d'usage en C/C++ ?
Tu peux aussi essayer un vbCr ou vbLf simple plutôt qu'un CrLf?
Peut-être que la documentation d'Eudora t'en dira plus à ce sujet?

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le message de
news:142401c3e02b$31bf9300$
Oui, le problème c'est que moi je ne passes PAS par une
Msgbox

Je veux que ma variable Msg="bla bla bla" soit formatée
avec des retour à la ligne

Je rappelle que le contenu de Msg va ensuite s'afficher
dans un mail


-----Message d'origine-----
Bonjour/soir,

Essaye ceci:
'Text1 est une textbox multiline = true

Private Sub Command1_Click()
MsgBox "Bonjour" & vbCrLf & "Comment allez-vous?"
Text1.Text = "Bonjour" & vbCrLf & "Comment allez- vous?"

'fonctionne aussi avec vbNewLine:
'MsgBox "Bonjour" & vbNewLine & "Comment allez-vous?"
'Text1.Text = "Bonjour" & vbNewLine & "Comment allez- vous?"
End Sub

Attention que la concaténation ne doit pas se faire par le signe
plus: Si Chr(13) + Chr(10) fonctionne, Chr(13) & Chr(10) est plus
correct car il utilise l'opérateur prévu à cet effet!
Faire aussi attention que Chr(x) est nettement plus lent que Chr$(x).
Donc, il vaudrait mieux écrire:
Chr$(13) & Chr$(10)

Ou passer par la constante vbNewLine/vbCrLf , ce qui évite de devoir
recalculer la valeur de l'expression!

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le message de
news:1b0201c3e01f$9cb23ac0$
J'ai l'impression

que Chr(10) --> vbLf
Chr(13) + Chr(10) --> vbCrLf

ne fonctionnent que dans une Msg Box par exemple, mais pas
dans du texte...




.




Avatar
Doms
Salut,
Voici une portion de code qui marche par ex pour l'envoie d'un mail avec des
retours dans le body.

Dim mailSubjet as string
Dim mailBody as string
mailSubjet = Text1.Text
mailBody = "Voila ton message" & "%0a%0b" & _
"Nom : " & txtNom.Text & "%0a%0b" & _
"Prenom : " & txtPrenom.Text & "%0a%0b" & _
"Adresse : " & txtAdresse.Text
ShellExec "mailto:" & txtEMail.Text & "?subject=" & mailSubjet & "&Body=" &
mailBody


"François Picalausa" a écrit dans le message de
news:
Bonjour/soir,

L'exemple utilisant le textbox ne passe PAS non plus par une messagebox


;-)
Je l'avoue, j'avais lu un peu vite :-)

Mais peut-être qu'Eudora préfère des rn comme il est d'usage en C/C++ ?
Tu peux aussi essayer un vbCr ou vbLf simple plutôt qu'un CrLf?
Peut-être que la documentation d'Eudora t'en dira plus à ce sujet?

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le message de
news:142401c3e02b$31bf9300$
> Oui, le problème c'est que moi je ne passes PAS par une
> Msgbox
>
> Je veux que ma variable Msg="bla bla bla" soit formatée
> avec des retour à la ligne
>
> Je rappelle que le contenu de Msg va ensuite s'afficher
> dans un mail
>
>
>> -----Message d'origine-----
>> Bonjour/soir,
>>
>> Essaye ceci:
>> 'Text1 est une textbox multiline = true
>>
>> Private Sub Command1_Click()
>> MsgBox "Bonjour" & vbCrLf & "Comment allez-vous?"
>> Text1.Text = "Bonjour" & vbCrLf & "Comment allez- vous?"
>>
>> 'fonctionne aussi avec vbNewLine:
>> 'MsgBox "Bonjour" & vbNewLine & "Comment allez-vous?"
>> 'Text1.Text = "Bonjour" & vbNewLine & "Comment allez- vous?"
>> End Sub
>>
>> Attention que la concaténation ne doit pas se faire par le signe
>> plus: Si Chr(13) + Chr(10) fonctionne, Chr(13) & Chr(10) est plus
>> correct car il utilise l'opérateur prévu à cet effet!
>> Faire aussi attention que Chr(x) est nettement plus lent que Chr$(x).
>> Donc, il vaudrait mieux écrire:
>> Chr$(13) & Chr$(10)
>>
>> Ou passer par la constante vbNewLine/vbCrLf , ce qui évite de devoir
>> recalculer la valeur de l'expression!
>>
>> --
>> François Picalausa (MVP VB)
>> FAQ VB : http://faq.vb.free.fr
>> MSDN : http://msdn.microsoft.com
>>
>>
>> "Franck" a écrit dans le message de
>> news:1b0201c3e01f$9cb23ac0$
>>> J'ai l'impression
>>>
>>> que Chr(10) --> vbLf
>>> Chr(13) + Chr(10) --> vbCrLf
>>>
>>> ne fonctionnent que dans une Msg Box par exemple, mais pas
>>> dans du texte...
>>
>>
>> .




Avatar
Franck
Parfait !!

Ca fonctionne.

Merci Infiniment !

Alleluïa !

-----Message d'origine-----
Salut,
Voici une portion de code qui marche par ex pour l'envoie


d'un mail avec des
retours dans le body.

Dim mailSubjet as string
Dim mailBody as string
mailSubjet = Text1.Text
mailBody = "Voila ton message" & "%0a%0b" & _
"Nom : " & txtNom.Text & "%0a%0b" & _
"Prenom : " & txtPrenom.Text & "%0a%0b" & _
"Adresse : " & txtAdresse.Text
ShellExec "mailto:" & txtEMail.Text & "?subject=" &


mailSubjet & "&Body=" &
mailBody


"François Picalausa" a écrit dans


le message de
news:
Bonjour/soir,

L'exemple utilisant le textbox ne passe PAS non plus




par une messagebox
;-)
Je l'avoue, j'avais lu un peu vite :-)

Mais peut-être qu'Eudora préfère des rn comme il est




d'usage en C/C++ ?
Tu peux aussi essayer un vbCr ou vbLf simple plutôt




qu'un CrLf?
Peut-être que la documentation d'Eudora t'en dira plus




à ce sujet?

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Franck" a écrit dans le




message de
news:142401c3e02b$31bf9300$
> Oui, le problème c'est que moi je ne passes PAS par




une
> Msgbox
>
> Je veux que ma variable Msg="bla bla bla" soit




formatée
> avec des retour à la ligne
>
> Je rappelle que le contenu de Msg va ensuite




s'afficher
> dans un mail
>
>
>> -----Message d'origine-----
>> Bonjour/soir,
>>
>> Essaye ceci:
>> 'Text1 est une textbox multiline = true
>>
>> Private Sub Command1_Click()
>> MsgBox "Bonjour" & vbCrLf & "Comment allez-vous?"
>> Text1.Text = "Bonjour" & vbCrLf & "Comment allez-




vous?"
>>
>> 'fonctionne aussi avec vbNewLine:
>> 'MsgBox "Bonjour" & vbNewLine & "Comment allez-




vous?"
>> 'Text1.Text = "Bonjour" & vbNewLine & "Comment




allez- vous?"
>> End Sub
>>
>> Attention que la concaténation ne doit pas se faire




par le signe
>> plus: Si Chr(13) + Chr(10) fonctionne, Chr(13) & Chr




(10) est plus
>> correct car il utilise l'opérateur prévu à cet effet!
>> Faire aussi attention que Chr(x) est nettement plus




lent que Chr$(x).
>> Donc, il vaudrait mieux écrire:
>> Chr$(13) & Chr$(10)
>>
>> Ou passer par la constante vbNewLine/vbCrLf , ce qui




évite de devoir
>> recalculer la valeur de l'expression!
>>
>> --
>> François Picalausa (MVP VB)
>> FAQ VB : http://faq.vb.free.fr
>> MSDN : http://msdn.microsoft.com
>>
>>
>> "Franck" a écrit dans le




message de
>> news:1b0201c3e01f$9cb23ac0$
>>> J'ai l'impression
>>>
>>> que Chr(10) --> vbLf
>>> Chr(13) + Chr(10) --> vbCrLf
>>>
>>> ne fonctionnent que dans une Msg Box par exemple,




mais pas
>>> dans du texte...
>>
>>
>> .






.