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 :

Envoi d'un mail à partir d'excel


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Par défaut Envoi d'un mail à partir d'excel
    Bonjour à tous.

    Voila je viens a vous car j'ai un soucis avec un fichier et je suis pas vraiment calé niveau VBA. J'ai chercher des solution à mon problème sur internet mais je n'ai pas trouver mon bonheur, ou partiellement tout du moins.

    Voici mon fichier : C'est une interdépendance entre des documents de maintenance et des opérations de maintenance. Le fichier renseigne l'équipe concernée en fonction du document. Le fichier est composé de 9 feuilles, et chacune représente une série d'engin. Chaque feuille à la même configuration. Dans la colonne A, j'ai les documents et dans la colonne D, les équipes concernée.

    Voici ce que je recherche :

    1) Dans un premier temps, je souhaite faire une recherche d'une référence de document dans tout le classeur, et que le résultat s'affiche dans une autre feuille, avec la référence du document, les série d'engin concernée et l'équipe concernée.

    2) Ensuite, et c'est la que sa ce complique, je souhaite qu'Excel envoi un mail à la personne concernée par le document recherché. Je m'explique, grâce à la méthode 1), je fait une recherche du document, ensuite dans la feuille de résultat, je modifie la version du document, et je souhaite qu'une fois que la modification a été faite, l'application envoi un mail à la personne concernée par le document pour lui demander de mettre ses informations à jour.

    Voila j'espère que vous m'avez compris car c'est pas évident à exposer. Je vous remercie par avance de votre aide.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 112
    Par défaut
    Bonjour,

    il faut regarder du coté du publipostage, avec l'enregistreur de macro pour construire le code ça marche bien.

    Etienne

  3. #3
    Membre éclairé Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Par défaut
    Bonsoir,

    Pour l’envoi d’email par Excel, voici un lien qui fournit de bons code vba.

    Le LIEN

    Si la réponse est interessante, n’oublier pas le dans le coins droit

  4. #4
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Par défaut
    Salut letienne, merci pour ta proposition, mais du coup le publipostage sa fonctionne plutôt sur du Word non?

    Merci pour le lien RastaBomboclat, c'est une mine d'information, bon tout est en anglais donc pas trop évident mais tout est bon à prendre ! Je te remercie.

  5. #5
    Membre éclairé Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Par défaut
    Bonjour Daan94

    Désolé pour le retard de réponse.
    Voici un code que j'ai tiré du même site et que j'utise dans une de mes appli Excel. Il fonctionne plutôt bien chez moi. tu peux l'essayer.

    Dans le module un copier coller du code ci-dessous et créer un bouton auquel tu affecteras cette macro.
    N'oublies pas de changer les adresses emails qui sont dans le code par de vraies adresses qui fonctionnent pour faire ton teste, sinon alors que ça marche.

    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
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    Option Explicit
     
    Sub MailActiveSheet()
    'Working in Excel 2000-2016
        Dim FileExtStr As String
        Dim FileFormatNum As Long
        Dim Sourcewb As Workbook
        Dim Destwb As Workbook
        Dim TempFilePath As String
        Dim TempFileName As String
        Dim OutApp As Object
        Dim OutMail As Object
     
        With Application
            .ScreenUpdating = False
            .EnableEvents = False
        End With
     
        Set Sourcewb = ActiveWorkbook
     
        'Copie la feuille active dans un nouveau classeur
        ActiveSheet.Copy
        Set Destwb = ActiveWorkbook
     
        'Determine la version Excel et le type de fichier/format
        With Destwb
            If Val(Application.Version) < 12 Then
                'Quand tu utilise Excel 97-2003
                FileExtStr = ".xls": FileFormatNum = -4143
            Else
                'Quand tu utilise 2007-2016
                Select Case Sourcewb.FileFormat
                Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
                Case 52:
                    If .HasVBProject Then
                        FileExtStr = ".xlsm": FileFormatNum = 52
                    Else
                        FileExtStr = ".xlsx": FileFormatNum = 51
                    End If
                Case 56: FileExtStr = ".xls": FileFormatNum = 56
                Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
                End Select
            End If
        End With
     
        '   Le code ci-dessous change toutes les cellules de la feuille en valeur: Si ça vous interersse
        '    With Destwb.Sheets(1).UsedRange
        '        .Cells.Copy
        '        .Cells.PasteSpecial xlPasteValues
        '        .Cells(1).Select
        '    End With
        '    Application.CutCopyMode = False
     
        'Sauvegare la nouvelle classeur; envoie l'email; efface le classeur créé
        TempFilePath = Environ$("temp") & "\"
        TempFileName = "Part of " & Sourcewb.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")
     
        Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(0)
     
        With Destwb
            .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
            On Error Resume Next
            With OutMail
                .to = "rastabomboclat@developpez.net"
                .CC = "Daan94@developpez.net"
                .BCC = ""
                .Subject = "Teste d'un seul Attachement"
                .Body = "Hi there" & vbCr & "We are testing the sending email via MSExcel spreadsheet"
                .Attachments.Add Destwb.FullName
                'Vous pouvez ajouter d'autres annexes comme ci-dessous
                '.Attachments.Add ("C:\test.txt")
                .Send   'ou utiliser .Display
            End With
            On Error GoTo 0
            .Close savechanges:=False
        End With
     
        'Efface le fichier que vous avez envoyé
        Kill TempFilePath & TempFileName & FileExtStr
     
        Set OutMail = Nothing
        Set OutApp = Nothing
     
        With Application
            .ScreenUpdating = True
            .EnableEvents = True
        End With
     
        'Ça c'est mon plus a moi RastaBomboclat.
        'Une boite de dialogue pour confirmer que l'email a bel et bien été envoyé
        MsgBox Application.UserName & "," & vbCr & "Cette Feuille: " & ActiveSheet.Name & ", a été envoyée par email.", _
        vbOKOnly + vbInformation, ActiveWorkbook.Name & " - Envoie d'email"
     
    End Sub
    Bon courage.

    Si la réponse est interessante, n’oublier pas le dans le coins droit.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 112
    Par défaut
    Citation Envoyé par Daan94 Voir le message
    Salut letienne, merci pour ta proposition, mais du coup le publipostage sa fonctionne plutôt sur du Word non?
    oups Effectivement ! Je sors...

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Octobre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2019
    Messages : 4
    Par défaut Destinataire
    Bonjour,
    J'ai une question ,
    est-il possible de mettre une formule dans la section to:"", qui permet de sélectionné une adresse dans un tableau Excel

  8. #8
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par mimitrips59 Voir le message
    est-il possible de mettre une formule dans la section to:"", qui permet de sélectionné une adresse dans un tableau Excel
    Bien sûr étant donné que ce paramètre est de type String.
    Cela dit, ça t'aurait pris moins de temps de faire le test par toi-même que de poser la question sur ce forum.

Discussions similaires

  1. [XL-2010] Envoi de mail à partir d'excel
    Par snico78 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/06/2014, 14h29
  2. Envoi de mail à partir d'excel
    Par winnie280590 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/02/2014, 01h04
  3. [XL-2010] Envoi de Mail à partir d'Excel
    Par jérémyp8 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/08/2013, 11h38
  4. Envoie mail à partir d'excel à adresse mail d'une cellule
    Par Cordonny dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/06/2013, 12h10
  5. Envoi mail à partir d'Excel (pb de fonctionnement)
    Par bybelos33 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/03/2007, 15h46

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