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

Macros et VBA Excel Discussion :

[VBA-Excel]Probleme Mailing via Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier Avatar de Mugette
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 194
    Points : 80
    Points
    80
    Par défaut [VBA-Excel]Probleme Mailing via Excel
    Bonjour,

    Voici mon probleme:
    Je rentre plusieurs parametres dans ma feuille1(titre, listedif,...)
    Je genere un modele de contenu de mail dans ma feuille2.
    Je voudrais copier la range "model" de la feuille 2 dans le body du mail.
    est-ce possible ?
    Voici le code que j'utilise qui marche pas...
    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
    Dim textMail As String, lorigine As String, adresseMail As String, lesujet As String, retour As Integer
    
    Function mail(adresse As String, sujet As String, myrange As String, origine As String)
    ' Fonction de mail
    
            Set MonOutlook = CreateObject("Outlook.Application")
            Set MonMessage = MonOutlook.CreateItem(0)
            'MonMessage.From = origine
            MonMessage.To = adresse
            MonMessage.Subject = sujet
            'MonMessage.Body =message
            Worksheets("Feuil2").range(myrange).Paste Destination:=Body
            MonMessage.Send
    
    End Function
    Voici comment je l'appelle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub CommandButton1_Click()
        Dim textMail As String, lorigine As String, adresseMail As String, lesujet As String, retour As Integer
        textMail = "A1:I30"
        adresseMail = "kiki@koko.fr"
        lesujet = "sujet du mail"
        retour = mail(adresseMail, lesujet, textMail, lorigine)
    End Sub
    Ce code plante à la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Feuil2").range(myrange).Paste Destination:=Body
    Message d'erreur --> Ppté ou méthode non géré par cet objet.

    Merci à vous

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonsoir

    j'espere que cette adaptation pourra t'aider


    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
    Private Sub CommandButton1_Click()
        Dim textMail As String, Lorigine As String
        Dim adresseMail As String, leSujet As String
        Dim Retour As Integer
     
        textMail = "A1:I30"
        adresseMail = "kiki@koko.fr"
        leSujet = "sujet du mail"
     
        Retour = mail(adresseMail, leSujet, textMail, Lorigine)
    End Sub
     
     
    Function mail(Adresse As String, Sujet As String, myRange As String, _
        Origine As String)
        ' Fonction de mail
        Dim strHTML As String
        Dim i As Byte, j As Byte
        Dim MonOutlook As Object
        Dim MonMessage As Object
     
        strHTML = ""
        strHTML = strHTML & "<HEAD>"
        strHTML = strHTML & "<BODY>"
        strHTML = strHTML & "<TABLE BORDER>"
     
        For i = 1 To Range(myRange).Rows.Count 'nombre de lignes
            strHTML = strHTML & "<TR halign='middle'nowrap>"
            For j = 1 To Range(myRange).Columns.Count 'nombre de colonnes
                strHTML = strHTML & _
                "<TD bgcolor='yellow'align='center'><FONT COLOR='blue'SIZE=3>" _
                        & Cells(i, j) & "</FONT></TD>"
            Next j
            strHTML = strHTML & "</TR>"
        Next i
     
        strHTML = strHTML & "</TABLE>"
     
        strHTML = strHTML & "<BR><BR>Cordialement<BR>" & Environ("username")
        strHTML = strHTML & "</BODY>"
        strHTML = strHTML & ""
     
        Set MonOutlook = CreateObject("Outlook.Application")
        Set MonMessage = MonOutlook.CreateItem(0)
        'MonMessage.From = origine
        MonMessage.To = Adresse
        MonMessage.Subject = Sujet
        'MonMessage.Body =message
        MonMessage.HTMLBody = strHTML
        'MonMessage.Display
        MonMessage.Send
     
    End Function


    bon week end
    michel

  3. #3
    Membre régulier Avatar de Mugette
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 194
    Points : 80
    Points
    80
    Par défaut
    merci michel.
    ca marche nickel.
    j'ai plus qu'a mettre ma propre mise en forme du html et c'est good.
    j'avais un truc ressemblant mais je passais par un fichier temporaire et la ca plantait au moment de le publier.

    Merci encore.
    Ciao

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

Discussions similaires

  1. envoyer un mail via excel
    Par zangaloni dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 06/04/2011, 19h23
  2. Envoi d'un mail via excel
    Par tidams dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/01/2009, 00h05
  3. [VBA-E]probleme affichage date excel a partir d'une DTPicker VBA [15/02/07]
    Par gromorice dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 15/02/2007, 17h05
  4. Mail via Excel sans body
    Par pascal58 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/11/2006, 16h30
  5. Envoie d'un fichier excel par mail via un bouton d'action
    Par ghostal dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/07/2006, 08h22

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