Le Module_EnvoiMailOutlookà copier / intégrer dans le Projet VBA
Il contient:
- Une structure d'interface (Type OUTLOOK_DATA) dont les éléments sont utilisés pour l'envoi du mail,
- La Function MailOutlook() à appeler pour envoyer le mail.
Le Module_Test qui est un exemple de mise en œuvre de...
bonjour dudu2
super macro, mais je n'arrive pas à paramétrer l'envoi d'un pièce jointe
peux tu m'expliquer en réponse comment ca fonctionne
merci
alexis
Tu as un exemple avec 2 pièces jointes en commentaires du code dans le paragraphe "Mise en œuvre":
VB:
'ReDim .TabAttachments(1 To 2)
'.TabAttachments(1) = "H:\Téléchargements\Attachment1.pdf"
'.TabAttachments(2) = "H:\Téléchargements\Attachment2.pdf"
Si tu n'as qu'une seule pièce jointe tu fais:
VB:
With OutLookInterface
.../...
ReDim .TabAttachments(1 To 1)
.TabAttachments(1) = "H:\Téléchargements\Attachment1.pdf"
.../...
End With
En indiquant le chemin complet de la pièce à joindre en indice 1 du tableau des pièces jointes (.TabAttachments).
Edit: dans le paragraphe "La structure d'interface" j'ai modifié le commentaire pour remplacer le terme "attachements" (qui est un anglicisme pas très bien venu) par "pièces jointes" qui est plus approprié.
(Pièces jointes se dit Attachments en anglais)
Tu as un exemple avec 2 pièces jointes en commentaires du code dans le paragraphe "Mise en œuvre":
VB:
'ReDim .TabAttachments(1 To 2)
'.TabAttachments(1) = "H:\Téléchargements\Attachment1.pdf"
'.TabAttachments(2) = "H:\Téléchargements\Attachment2.pdf"
Si tu n'as qu'une seule pièce jointe tu fais:
VB:
With OutLookInterface
.../...
ReDim .TabAttachments(1 To 1)
.TabAttachments(1) = "H:\Téléchargements\Attachment1.pdf"
.../...
End With
En indiquant le chemin complet de la pièce à joindre en indice 1 du tableau des pièces jointes (.TabAttachments).
Edit: dans le paragraphe "La structure d'interface" j'ai modifié le commentaire pour remplacer le terme "attachements" (qui est un anglicisme pas très bien venu) par "pièces jointes" qui est plus approprié.
(Pièces jointes se dit Attachments en anglais)
Voici le fichier corrigé et amélioré pour intercepter les erreurs lors de l'ajout d'Attachments.
C'est bon pour moi. Si ça l'est aussi pour toi, je publierai cette version.
Voici le fichier corrigé et amélioré pour intercepter les erreurs lors de l'ajout d'Attachments.
C'est bon pour moi. Si ça l'est aussi pour toi, je publierai cette version.
ca marche nickel.
M'autorises tu à modifier ton code pour le rendre plus générique. A savoir, le nombre de pièces jointes à envoyer. j'aimerais aussi comment tu modifies la boite de dialogue qui indique les comptes outlook présents.
merci
a te lire
alexis
Quel code veux-tu modifier ?
Je te conseille de laisser tel quel le Module_MailOutlook et ne pas y inclure de code.
Place ton code dans un Module séparé.
Tu peux coder ce que tu veux dans ton propre module qui appelle la fonction d'envoi.
Le nombre de pièces jointes est libre et ne dépend que de ce que tu codes dans ton propre module.
La boîte de dialogue de choix du compte dans la fonction d'envoi est basique.
Tu peux, toujours dans ton propre module, appeler la fonction ListeComptesOutlook() qui te renvoie un tableau des Comptes Outlook présents et gérer cette liste à ta guise pour en choisir un à valoriser dans l'Interface.
VB:
SendUsingAccount As Variant 'Nom du compte Outlook à utiliser (ex.:moncompte@domaine.com)
'ou bien
'Numéro de séquence (1-n) du compte Outlook à utiliser
'Si SendUsingAccount = 0, la liste des comptes est proposée pour un choix
Il faut juste rendre Public la fonction ListeComptesOutlook() au préalable, ce que je ferai dans le code final.