IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenOffice & LibreOffice Discussion :

Envoi d'un mail par macro


Sujet :

OpenOffice & LibreOffice

  1. #1
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2019
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2019
    Messages : 11
    Points : 12
    Points
    12
    Par défaut Envoi d'un mail par macro
    Bonjour
    J'ai récupéré ce code sur un forum :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub cmdMail()
        Dim oForm as Object
        Dim Sujet as String, Corps as String, Des as String, Exp as String
           If Dir(ConvertToURL("C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe"), 0) <> "" then
           Else
              MsgBox("thunderbird n'éxiste pas dans le dossier",16,"Courriel")
              Exit Sub
           End If
           Sujet = "Correction de votre dossier"
           Corps = "Ceci est un essai"
           Des = "adresseDestinataire@yahoo.fr"
           shell(ConvertToURL("/usr/bin/thunderbird"),3, "-compose body=" & Corps & ",subject=" & Sujet & ",to=" & Des & ",attachment='C:\temp\info.doc,C:\temp\food.doc'" )
        End Sub
    J'aimerais savoir si on peut également indiquer l'expéditeur car dans Thunderbird j'ai plusieurs comptes de messagerie
    Merci de votre aide
    Cordialement

  2. #2
    Membre averti Avatar de Mobydick_62
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2009
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2009
    Messages : 261
    Points : 388
    Points
    388
    Par défaut Envoi mail par macro
    Bonjour,
    Avec ta méthode je ne sais pas. Mais avec ce code c'est possible. Il suffit de passer ton adresse expéditeur à l'objet "Originator" soit en dur dans le code ou en passant par une variable.
    Il faut que Thunderbird soit ton courriel par défaut.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     '___________________________________________________________________________
      Sub OuvertureThunderbird()
    	On Error Goto ErreurMail:
        Dim sv As Object, unClient As Object, monMel As Object
    	Dim annexes(0) As String 
    	sv = createUnoService("com.sun.star.system.SimpleSystemMail")
    	unClient = sv.querySimpleMailClient
    	If IsNull(unClient) Then
         MsgBox("Client d'e-mail non disponible", 16)
         Stop
    	End if
    	monMel = unClient.createSimpleMailMessage
    	With monMel
         .Originator = "mon.AdresseMail@blabla.fr" 'Expéditeur
    	 .Recipient = "mon.Destinataire@free.fr" 'Destinataire
      	 .Subject = "Sujet du mail" 
      	 annexes(0) = "C:\temp\info.doc,C:\temp\food.doc"
      	 .Attachement = annexes()
    	End With
    	unClient.sendSimpleMailMessage(monMel, 0)
    	Goto Fin ' Je passe la gestion d'erreur car pas d'erreur.
    	ErreurMail:
        MsgBox "Une erreur est survenue. Impossibilité de lancer votre messagerie."
    	Fin:
    	On Error Goto 0
    End Sub
    Cordialement
    Libre Office Version: 7.4.3.2 (x64)
    Windows 10

  3. #3
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2019
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2019
    Messages : 11
    Points : 12
    Points
    12
    Par défaut Envoi d'un mail par macro
    Bonjour
    Merci de ta réponse mais cette macro me donne comme réponse :

    Il n'existe aucun programme de messagerie associé pour effectuer l'action demandée.
    Veuillez installer un programme de messagerie ou, si un tel programme est déjà installé,
    créer une association dans le panneau de configuration. Programme par défaut.

    Je suis allé contrôler dans le panneau de configuration et Thunderbird est bien mon client de messagerie par défaut

    Je désire envoyer 2 pièces jointes j'ai ecrit :
    annexes(0) = "c:\temp1.txt , c:\temp2.txt"
    est ce correct je n'ai aucun moyen de contrôle puisqu'il n'y a pas de client de messagerie
    Cordialement

  4. #4
    Membre averti Avatar de Mobydick_62
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2009
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2009
    Messages : 261
    Points : 388
    Points
    388
    Par défaut Envoi mail par macro
    Bonjour,
    Je pense que le message d'erreur que tu as ne vient pas de la messagerie.
    Le problème est que le code "On Error Goto...." te renvoie sur le message "Une erreur est survenue....." même s'il s'agit d'une autre erreur. C'est bien de l'utiliser quand on sait que le reste du code est bon.
    Donc dans un premier temps il est préférable de commenter le "On Error"
    Je te joins le code avec aussi comment mettre plusieurs pièces jointes. Pour info "annexe() est un tableau. annexe (0) pour un élément, annexe(1) pour deux etc.....
    Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim annexes(1) As String
    annexes(0) = convertToURL("D:\PJ1.odt")
    annexes(1) = convertToURL("D:\PJ2.odt")
    OU BIEN

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim annexes() As String
     annexes() = Array (convertToURL("D:\PJ1.odt"),convertToURL("D:\PJ2.odt"))
    Ci-dessous le code complet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     '___________________________________________________________________________
      Sub OuvertureThunderbird()
    '	On Error Goto ErreurMail:
        Dim sv As Object, unClient As Object, monMel As Object
     
    	Dim annexes(1) As String 'Tableau à 2 éléments
        annexes(0) = convertToURL("D:\PJ1.odt")
        annexes(1) = convertToURL("D:\PJ2.odt")
     
        'Ou alors
    '    Dim annexes() As String
    '    annexes() = Array (convertToURL("D:\PJ1.odt"),convertToURL("D:\PJ2.odt"))
     
     
    	sv = createUnoService("com.sun.star.system.SimpleSystemMail")
    	unClient = sv.querySimpleMailClient
    	If IsNull(unClient) Then
         MsgBox("Client d'e-mail non disponible", 16)
         Stop
    	End if
    	monMel = unClient.createSimpleMailMessage
    	With monMel
         .Originator = "nom.expediteur@orange.fr" 'Expéditeur
    	 .Recipient = "mon.destinataire@orange.fr" 'Destinataire
      	 .Subject = "Sujet du mail" 
      	 .Attachement = annexes()
    	End With
    	unClient.sendSimpleMailMessage(monMel, 0)
    	Goto Fin ' Je passe la gestion d'erreur car pas d'erreur.
    	ErreurMail:
        MsgBox "Une erreur est survenue. Impossibilité de lancer votre messagerie."
    	Fin:
    	On Error Goto 0
    End Sub
    Cordialement
    Libre Office Version: 7.4.3.2 (x64)
    Windows 10

Discussions similaires

  1. [XL-2007] Envoyer un mail par macro
    Par alexandrek dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2011, 19h15
  2. Résultat d'envoi d'un mail par CGI depuis mon site
    Par Rifton007 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 15/07/2009, 11h13
  3. envoi d'un mail par formulaire
    Par mikael2235 dans le forum Langage
    Réponses: 10
    Dernier message: 28/05/2009, 14h01
  4. Réponses: 15
    Dernier message: 07/05/2007, 14h09
  5. [VB6] Envoi d'un mail par clique sur un mot
    Par batmat86 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 23/03/2006, 12h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo