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 - Génération mail à parti J-10 pour anniversaire et fête


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Avril 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2017
    Messages : 1
    Points : 3
    Points
    3
    Par défaut VBA - Excel - Génération mail à parti J-10 pour anniversaire et fête
    Bonjour,

    A partir de mon fichier en PJ, je souhaite avoir un mail qui me soit envoyer ainsi qu'à une seconde personne en copie afin de me stipuler que c'est l'anniversaire de la personne en colonne a dans x jours (à partir de 10 jours avant) et la même chose pour les fêtes. Ce serait pour avoir un mail qui m'arrive sur une boite outlook. J'ai fais un peu de vba mais pas assez pour me lancer dans un truc plus compliqué ni me baser sur quelque chose de différent. Pouvez vous m'aider ?

    A noter en G et H , j'ai le message d'anniversaire ou de fête quand c'est le jour J.
    Les jours de relances, je les ai en colonnes D et F.
    En colonne A, c'est les prénoms et noms des personnes. anniv.xlsx

    Merci beaucoup

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    Tu es ici dans la section Index du forum > Logiciels > Microsoft Office > Excel du forum
    Ce que tu cherches à faire (envoi de mails) ne saurait se faire à mon sens avec Excel Seul et nécessite l'utilisation de VBA (autre section de ce forum).
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  3. #3
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Bonjour,

    J'ai déplacé la discussion dans le sous-forum VBA Excel.

    Cependant ce n'est pas si simple comme sujet.
    En cherchant dans les FAQ et le forum, il a bien des exemples pour envoyer des mails, mais Excel n'est pas un agenda.
    La première question à se poser est peut-être d'analyser si Excel est le bon outil.

  4. #4
    Membre éclairé Avatar de Nicolas JACQUIN
    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    551
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : .
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 551
    Points : 787
    Points
    787
    Par défaut
    Bonjour,
    voici un code et ton programme modifié en fonction, à voir si cela te convient, je pourrai pas faire mieux à mon niveau, il y aura sans doute mieux mais attendons les critiques.
    bonne réception.

    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
    Sub EnvoiMail_anniversaire_fete()
     
    Application.ScreenUpdating = False
        Dim ObjOutlook As New Outlook.Application
        Dim oBjMail As Outlook.MailItem
        Dim texte_anniv As String, texte_fete As String, nom As String, nom2 As String, ajout As String
        Dim ton_mail As String
        Dim i As Integer
        Dim derlign As Integer
        Dim anniv As Date
        Dim fete As Date
     
        On Error Resume Next
        derlign = Worksheets("Feuil1").Range("A65536").End(xlUp).Row
     
        For i = 4 To derlign
        anniv = Range("D" & i).Value
     
            texte_anniv = "<br><font style='font-family: Calibri;font-size: 11pt ;" & _
            "' font color=black>Joyeux Anniversaire" & _
            "</FONT>"
     
        Set ObjOutlook = New Outlook.Application
        Set oBjMail = ObjOutlook.CreateItem(olMailItem)
     
        ton_mail = "moi@live.fr" 'ton adresse mail à mettre ici
     
    If anniv <= "10" Then
        With oBjMail
            .Display
            .To = Range("G" & i).Value
            .CC = ton_mail
            '.BCC = ""
            .Subject = "Anniversaire"
            .HTMLBody = texte_anniv & " " & .HTMLBody
            .Display
            '.Send
        End With
    End If
     
    Next i
    Set oBjMail = Nothing
    Set ObjOutlook = Nothing
     
        For i = 4 To derlign
        fete = Range("F" & i).Value
     
    texte_fete = "<br><font style='font-family: Calibri;font-size: 11pt ;" & _
            "' font color=black>Joyeuse Fête" & _
            "</FONT>"
     
        Set ObjOutlook = New Outlook.Application
        Set oBjMail = ObjOutlook.CreateItem(olMailItem)
     
    If fete <= "10" Then
        With oBjMail
            .Display
            .To = Range("G" & i).Value
            .CC = ton_mail
            '.BCC = ""
            .Subject = "Fête"
            .HTMLBody = texte_fete & " " & .HTMLBody
            .Display
            '.Send
        End With
    End If
     
    Next i
    Set oBjMail = Nothing
    Set ObjOutlook = Nothing
     
    On Error GoTo 0
    End Sub
    Merci d'exprimer votre message le plus clairement possible pour qu'on puisse vous aider

    n'oubliez pas de cliquer sur et si cela vous a aidé pensez à voter

Discussions similaires

  1. [XL-2003] Probleme VBA excel générer mail automatique avec piece jointe
    Par itshy dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/03/2012, 10h46
  2. [VBA-Excel]Probleme Mailing via Excel
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/10/2006, 13h08
  3. [VBA Excel] Génération d'un TCD : pb sous excel 200
    Par sun19 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/08/2006, 20h27
  4. VBA- Excel : Envoyer mail automatique
    Par alex_95 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/06/2006, 22h13
  5. [VBA][Excel]Supprimer une partie du texte d'une grosse liste
    Par annedeblois dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 19/09/2005, 17h15

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