MonMessage.To = Sheets("Mail").Range("C8")
MonMessage.Subject = "Urgent: Demande de prix chantier " & chantier.Value & chantierliste.Value & " - Lot: " & lot.Value
MonMessage.body = "Monsieur, " & vbCrLf & vbCrLf & "Conformément à votre demande, nous vous communiquons ci joint le dossier de consultation concernant le lot " & lot.Value & " du chantier de " & chantier.Value & chantierliste.Value & vbCrLf & vbCrLf & "Vous trouverez ci joint les éléments suivants nécessaires à la réalisation de votre offre de prix." & vbCrLf & vbCrLf & "Merci de nous transmettre votre meilleure offre de prix par fax, mail ou courrier le " & dt.Value & " au plus tard." & vbCrLf & comlibre.Value & vbCrLf & "Dans l'attente" & vbCrLf & vbCrLf & "Sincères salutations" & vbCrLf & vbCrLf & Sheets("Mail").Range("B13").Value
MonMessage.Display
Set MonOutlook = Nothing
Unload Me
End Sub
Comme vous pouvez le constater les textbox et combobox sont renommés en fonction des valeurs contenues.
Celui que je souhaiterais faire apparaitre en gras est "dt".
Je n'utilise pas Outlook mais généralement, pour mettre un texte en gras, quelque soit le logiciel, il est nécessaire de l'identifier dans l'application dans laquelle il se trouve. Ceci en le sélectionnant ou en en créant une instance.
Ceci est par exemple valable quand tu désires mettre en forme du texte dans Word depuis Excel.
Donc, à mon avis, tu devrais utiliser l'instance d'outlook que tu as créée, pour utiliser la recherche d'outlook afin de repérer le texte à mettre en forme, puis utiliser les fonctions d'outlook pour réaliser cette mise en forme.
Quant à copier un texte et sa mise en forme, d'une application à une autre tel que tu veux le faire, je n'y crois pas.
Pour les commandes à utiliser dans outlook pour la recherche et la mise en forme du texte, VBA devrait ressembler à ce qu'on connaît (...)
Et là tu devrais pouvoir utiliser
Code:
With MonOutlook
.Selection.Find. '(dt.value)
'et
With MonOutlook
.Selection.Font.Bold = true
Je n'utilise pas Outlook mais généralement, pour mettre un texte en gras, quelque soit le logiciel, il est nécessaire de l'identifier dans l'application dans laquelle il se trouve. Ceci en le sélectionnant ou en en créant une instance.
Ceci est par exemple valable quand tu désires mettre en forme du texte dans Word depuis Excel.
Donc, à mon avis, tu devrais utiliser l'instance d'outlook que tu as créée, pour utiliser la recherche d'outlook afin de repérer le texte à mettre en forme, puis utiliser les fonctions d'outlook pour réaliser cette mise en forme.
Quant à copier un texte et sa mise en forme, d'une application à une autre tel que tu veux le faire, je n'y crois pas.
Pour les commandes à utiliser dans outlook pour la recherche et la mise en forme du texte, VBA devrait ressembler à ce qu'on connaît (...)
Et là tu devrais pouvoir utiliser
Code:
With MonOutlook
.Selection.Find. '(dt.value)
'et
With MonOutlook
.Selection.Font.Bold = true
Hello,
Désolé mais n'ayant jamais utilisé outlook, je n'ai pas les syntaxes, n'y leur accès.
Tu devrais tester la recherche et la mise en forme directement dans outlook en enregistrant la macro, puis tu nous mets ce que tu obtiens et là, on paurra sans doute t'aider (?)
Désolé de te dire ça mais tu as mal lu césur
Le code que tu dois récupérer dans VBA de outlook, c'est la recherche de dt.value et la mise en forme.
Tu commences par mettre le texte dans ton mail sans mise en forme (hormis la mise en page)
Dans outlook, tu effectues la recherche de dt.value en enregistrant la macro
Puis, une fois dt.value sélectionnée par la recherche, tu effectues la mise en forme en enregistrant la macro.
Et tu reviens avec tes deux macros.
C'est bien le diable si l'un de nous ne peut pas te traduire ça afin que ça fonctionne depuis Excel.