Mail depuis userform avec corp du texte variable

piwwwa

XLDnaute Junior
Bonjour le forum,

Je viens à nouveau vers vous car je rencontre un problème insoluble pour moi ! D’ailleurs je ne sais même pas si Excel peut le faire, ou si mais multiple essaye on était totalement inutile ^^ !

Je me sert de l’usf lié au bouton saisie de formation pour saisir mes formations, mais je voudrais également envoyé mes mails par-là. Pour mettre les destinataire et les personnes voulu en copie j’ai réussi à écrire ce que je voulais. En effet, pour savoir si les personne doivent être destinataire ou non ma macro va lire à chaque fois la ComboBox (de 37 à 49) dans l’onglet stagiaire, et ne rajoute la personne en destinataire que si celle-ci est identifiée comme Confirmer ou rajouter, et il n’en tient pas compte si celle-ci est indisponible.

Mon problème et que je voudrais reproduire c’est condition dans le corps du mail, et la impossible, ou plutôt je n’y arrive pas. En effet je voudrais marquer dans le corps du mail le nom des personne en fonction du même critère (le nom s’ajoute si la personne et identifier comme confirmer ou rajouter sinon on passe au nom suivant), mais je ne sais pas comment faire.

Ci-joint un lien vers un modèle de mon fichier : (c) CJoint.com, 2012

Merci d’avance à tous ceux qui pourrons m’aider.
 

fredl

XLDnaute Impliqué
Re : Mail depuis userform avec corp du texte variable

Bonjour,
pour commencer quelques erreurs dans macro "convocation(confirmer) :
remplacer userform2 par userform10

puis pour le corps du message ecrire :

If UserForm10.ComboBox67.Value <> "" Then
.Body = "Bonjour," & Chr(13) & Chr(13) & _
"Je vous informe de votre participation à la formation " & UserForm10.ComboBox1.Value & _
"animée par " & UserForm10.ComboBox67.Value & Chr(13) & Chr(13) & _
"Restant à votre disposition, je souhaite que cette formation vous apporte entière satisfaction." & _
Chr(13) & Chr(13) & _
"Bien cordialement."
Else
.Body = "Bonjour," & Chr(13) & Chr(13) & _
"Je vous informe de votre participation à la formation " & UserForm10.ComboBox1.Value & _
"Restant à votre disposition, je souhaite que cette formation vous apporte entière satisfaction." & _
Chr(13) & Chr(13) & _
"Bien cordialement."
End If

Enfin, j'ai testé l'ajout des noms des gens si "confirmé", et il se fait bien dans ton mail.

J'attend apres toi...
Cdt
Frédéric
 

piwwwa

XLDnaute Junior
Re : Mail depuis userform avec corp du texte variable

Bonjour fredl et le forum,

Déjà un grand merci pour ta réponse !!

Mais et oui parce qu’il y a un mais, ou plutôt une question que je me pose. Je souhaiterais écrire quelque chose dans ce style la
.Body = "Bonjour," & Chr(13) & Chr(13) & _
"Je vous informe de votre participation à la formation avec : "

Liste des noms des stagiaires qui sont marqués comme confirmer ou rajouter dans les comboBox correspondent à leur ligne (comboBox 37 à 49)
"Restant à votre disposition, je souhaite que cette formation vous apporte entière satisfaction." & _
Chr(13) & Chr(13) & _
"Bien cordialement."

Est que je suis obligé d’écrire un corps de texte pour chaque situation possible ou est-ce que je mettre sa comme par exemple de la même forme que j’ajoute mes destinataire ?

Merci pour la modification sur l’usf je ne m’était pas rendu compte que j’avais oublié celle-là après avoir renommé mon usf.

Merci d’avance pour ton aide.
 

fredl

XLDnaute Impliqué
Re : Mail depuis userform avec corp du texte variable

Bonjour et bonne année 2015,
pourrais tu remettre en ligne ton fichier actualisé?
sinon, tester en boucle tous tes combobox :
si "comfirmer", recupérer : message= "nom" & "prenom" & vblf

Cdt
Fred
 

piwwwa

XLDnaute Junior
Re : Mail depuis userform avec corp du texte variable

Bonjour et bonne année fredl et le forum,

Voici le lien vers le fichier : (c) CJoint.com, 2012

Est-ce que tu peux développer ton idée car je ne comprends pas du tout ou tu veux en venir ^^ !

Un grand merci pour ton aide.
 

fredl

XLDnaute Impliqué
Re : Mail depuis userform avec corp du texte variable

Bonjour,
voila comment tu dois procéder :

'//////////////////////////////////////////////////////////////////////////////////////
Dim Vliste As String 'variable qui sera ta liste de personnes
'/recup les nom des gens (confirmer ou rajouter) sous forme de liste
'test 1ere ligne de ton tab
If ComboBox37.Value = "confirmer" Or "rajouter" Then
Vliste = Vliste & ComboBox8.Value & vbLf
End If
'test 2eme ligne de ton tab
If ComboBox38.Value = "confirmer" Or "rajouter" Then
Vliste = Vliste & ComboBox9.Value & vbLf
End If
'tester toutes les suivantes de la meme maniere
If ComboBoxXX.Value = "confirmer" Or "rajouter" Then
Vliste = Vliste & ComboBoxX.Value & vbLf
End If


'puis créer ton body en y intégrant Vliste
.Body = "Bonjour," & Chr(13) & Chr(13) & _
"Je vous informe de votre participation à la formation avec : " & vblf &
Vliste & _
'Chr(13) & Chr(13) & _
'"Bien cordialement."

'///////////////////////////////////////////////////////////////////////////////////////

Ai je répondu à ton besoin?

Cdt

Frédéric
 

piwwwa

XLDnaute Junior
Re : Mail depuis userform avec corp du texte variable

Bonjour Fredl et le forum,

Merci bien pour ton aide, ta réponse pourrais correspondre parfaitement à ma demande, cependant, quand je lance la macro j’ai une erreur d’exécution 13 qui se produit, sans que je sache pourquoi.

Le fichier ou j’ai intégré ta macro : (c) CJoint.com, 2012

Cordialement.
 

Yaloo

XLDnaute Barbatruc
Re : Mail depuis userform avec corp du texte variable

Bonsoir à tous,

Plutôt comme ça
If ComboBox37.Value = "Confirmer" Or ComboBox37.Value = "Rajouter" Then
Je pense qu'il faudrait simplifier tout ça, c'est très compliqué de s'y retrouver dans ton fichier :eek:

A+

Martial

PS : Il y a la possibilité, dans le mode avancé, d'insérer les fichiers, sans passer par cjoint.com, c'est la feuille avec le trombone dans la première ligne d'icône à droite.
 

fredl

XLDnaute Impliqué
Re : Mail depuis userform avec corp du texte variable

Bonjour,
la macro n'est pas utilisable en l'état.
Tu dois la modifier!!! :
ComboBoxXX.Value n'existe pas

par contre, je te laisse corriger une erreur que je viens de constater :
If ComboBox38.Value = "confirmer" Or "rajouter" then
a remplacer par :
If ComboBox38.Value = "confirmer" Or ComboBox38.Value ="rajouter" then

enfin, le ".Body" doit etre remis dans son contexte

c ok maintenant?
Frédéric
 

Discussions similaires

Réponses
17
Affichages
1 K
Réponses
6
Affichages
305

Statistiques des forums

Discussions
312 217
Messages
2 086 354
Membres
103 197
dernier inscrit
sandrine.lacaussade@orang