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

VBA Access Discussion :

modèle papier à lettre Outlook dans code Vba envoi mail Access [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    artiste du spectacle
    Inscrit en
    Février 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : artiste du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2018
    Messages : 22
    Points : 19
    Points
    19
    Par défaut modèle papier à lettre Outlook dans code Vba envoi mail Access
    Bonjour,
    J'ai mon code vba pour envoyer un mail qui marche très bien.
    J'aurai voulu utiliser un modèle papier à lettre outlook qui se trouve : C:\confirmation\access.oft
    Mais je n'arrive pas à l'insérer dans mon code.
    Merci d'avance pour votre aide.
    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
    35
    36
    Dim OutMail As Object
      Dim Dest As String
      Dim sTmp As String, SigString As String
      Dim Signature As String
      Dim Strbody As String
      Dim acReport As String
      Set OutApp = CreateObject("Outlook.Application")
      Set OutMail = OutApp.CreateItem(0)
      DoCmd.RefreshRecord
      DoCmd.RunCommand acCmdSaveRecord
       If IsNull(Me.Email) Then
        ' Si la valeur saisie est numérique,
        ' on affiche donc un message d'avertissement
        MsgBox "Il n'y a pas d'adresse courriel !", _
          vbExclamation
        ' Annuler la suite des opérations
         Exit Sub
         End If
     
      Strbody = "<FONT face=" & Chr(34) & "Segoe UI" & Chr(34) & "size=" & Chr(34) & "3" & Chr(34) & ">" & _
                "Bonjour, <br>"
        SigString = Environ("appdata") & "\Microsoft\Signatures\access.htm"
      If Dir(SigString) <> "" Then
        sTmp = Environ("appdata") & "\Microsoft\Signatures\" & Dir(SigString)
        Signature = GetBoiler(sTmp)
      Else
        Signature = ""
      End If
      With OutMail
        .To = Me.ORGANISME & " " & Me.VILLE & " " & Me.Email
        .CC = ""
        .BCC = ""
        .Subject = "Compagnie Coline Spectacles de Marionnettes à fils"
        .HTMLBody = Strbody & "<br>" & Signature
        .Display
      End With

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Regardez du côté de CreateItemFromTemplate :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    Set OutMail = OutApp.CreateItemFromTemplate("C:\confirmation\access.oft")
    ...
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre à l'essai
    Homme Profil pro
    artiste du spectacle
    Inscrit en
    Février 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : artiste du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2018
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Merci pour votre réponse, mais ça ne marche pas, il ne met pas le papier à lettre en fond de l'email.
    Pourtant quand j'ouvre le fichier .oft le papier à lettre apparaît bien sur le nouveau mail.

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Pouvez-vous poster votre code complet ?

    Peut-être essayer pour voir de remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .HTMLBody = Strbody & "<br>" & Signature
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .HTMLBody = .HTMLBody & vbNewLine & Strbody & "<br>" & Signature
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  5. #5
    Membre à l'essai
    Homme Profil pro
    artiste du spectacle
    Inscrit en
    Février 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : artiste du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2018
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Bonjour, merci pour votre réponse, votre code a marché, le mail s'affiche avec le papier à lettre du modèle.
    Le seul problème c'est que lors de la réception du mail, le papier à lettre s'affiche en pièce jointe mais pas dans le corps du mail.
    Je vais donc rester avec un fond blanc, ou alors y a t-il une possibilité de mettre une couleur dans le fond du mail en code Vba?

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    C'est étrange, j'ai fait un essai avec un fichier oft en modèle dans votre code, et lors de la réception sous gmail, le modèle s'affiche bien dans le corps du message

    Pourriez-vous poster votre code une nouvelle fois ?

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  7. #7
    Membre à l'essai
    Homme Profil pro
    artiste du spectacle
    Inscrit en
    Février 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : artiste du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2018
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Bonjour, merci de prendre du temps pour mon problème.
    Mon mail s'affiche bien avec le papier à lettre, mais quand je l'envoie (j'ai essaye sur plusieurs adresses mails), le papier à lettre est systématiquement en pièce jointe.
    Cordialement.

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    Dim OutApp As Object
      Dim OutMail As Object
      Dim Dest As String
      Dim sTmp As String, SigString As String
      Dim Signature As String
      Dim Strbody As String
      Dim acReport As String
     
      Set OutApp = CreateObject("Outlook.Application")
      Set OutMail = OutApp.CreateItemFromTemplate("C:\confirmation\accesstheme.oft")
      'Set OutMail = OutApp.CreateItem(0)
      DoCmd.RefreshRecord
      DoCmd.RunCommand acCmdSaveRecord
       If IsNull(Me.TITRE_SPECTACLE) Then
        ' Si la valeur saisie est numérique,
        ' on affiche donc un message d'avertissement
        MsgBox "Il n'y a pas de titre de spectacle !", _
          vbExclamation
        ' Annuler la suite des opérations
         Exit Sub
         End If
         If IsNull(Me.Date) Then
        ' Si la valeur saisie est numérique,
        ' on affiche donc un message d'avertissement
        MsgBox "Il n'y a pas de date de spectacle !", _
          vbExclamation
        ' Annuler la suite des opérations
         Exit Sub
         End If
         If IsNull(Me.HEURE) Then
        ' Si la valeur saisie est numérique,
        ' on affiche donc un message d'avertissement
        MsgBox "Il n'y a pas d'heure de spectacle !", _
          vbExclamation
        ' Annuler la suite des opérations
         Exit Sub
         End If
          If IsNull(Me.Email) Then
         ' Si la valeur saisie est numérique,
         ' on affiche donc un message d'avertissement
         MsgBox "Il n'y a pas d'adresse courriel !", _
           vbExclamation
         ' Annuler la suite des opérations
          Exit Sub
          End If
      DoCmd.OpenReport "CONFIRMATION ZONE 1 PDF", acViewPreview, "", "[ORDRE]=" & Me.ORDRE, acNormal
      DoCmd.OutputTo acOutputReport, , "PDF", "C:\confirmation\Confirmation de votre spectacle.pdf"
      DoCmd.Close , CONFIRMATION_ZONE_1_PDF
      Strbody = "<FONT face=" & Chr(34) & "Segoe UI" & Chr(34) & "size=" & Chr(34) & "3" & Chr(34) & ">" _
              & "Bonjour, <br>" _
              & "Veuillez trouver en pièce jointe la confirmation pour notre spectacle : " & " <b>" & Me.TITRE_SPECTACLE & " </b>" & " le " & "<b>" & Format(Me.Date, "dddd dd mmmm yyyy") & " </b>" & " à " & "<b>" & Me.HEURE & "</b>" & ".<br>" _
              & "Merci de <b>remplir la confirmation</b> et de nous la retourner <b>signée</b> par :<br>" _
              & "<br>" _
              & "&emsp;&emsp;" & "- Fax : 04 67 83 60 32<br>" _
              & "&emsp;&emsp;" & "- Courrier : Compagnie Coline - 2 Place G Brassens  - BP 2 - 34590 MARSILLARGUES<br>" _
              & "&emsp;&emsp;" & "- Courriel : <a href="mailto:coline.spectacles@free.fr">coline.spectacles@free.fr</a> <br>"
     
        SigString = Environ("appdata") & "\Microsoft\Signatures\access.htm"
      If Dir(SigString) <> "" Then
        sTmp = Environ("appdata") & "\Microsoft\Signatures\" & Dir(SigString)
        Signature = GetBoiler(sTmp)
      Else
        Signature = ""
      End If
     
      With OutMail
        .To = Me.ORGANISME & " " & Me.VILLE & " " & Me.Email
        .CC = ""
        .BCC = ""
        .Subject = "Confirmation du spectacle : " & Me.TITRE_SPECTACLE & " le " & Me.Date & " de la Compagnie Coline "
        .HTMLBody = .HTMLBody & vbNewLine & Strbody & "<br>" '& Signature
        '.HTMLBody = Strbody & "<br>" & Signature
        .Attachments.Add "C:\confirmation\Confirmation de votre spectacle.pdf"
        .Display
      End With

  8. #8
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    C'est bizarre, je n'ai pas ce souci avec votre code, l'oft s'affiche bien en réception dans le corps du message.

    Peut-être y a-t-il une option du côté du logiciel de messagerie qui réceptionne le courrier.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. requete sql dans code vba
    Par kernel57 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 05/01/2008, 15h30
  2. comment ajouter une condition if dans code VBA
    Par misig dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 13/12/2007, 00h03
  3. Problème SQL dans code VBA
    Par benjisan dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 15/05/2007, 13h22
  4. PW perdu dans code VBA sous Excel ?
    Par electrosat03 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/01/2007, 22h32
  5. [VBA] Envoi mail sans passer par outlook
    Par PoZZyX dans le forum Access
    Réponses: 8
    Dernier message: 12/04/2006, 16h27

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