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 automatique d'un classeur par mail LOTUS NOTES 9.0 [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Envoi automatique d'un classeur par mail LOTUS NOTES 9.0
    Bonjour,
    J'avais trouvé le code suivant qui fonctionnait parfaitement avec LOTUS 8.5.
    Depuis je suis passé sous "SEVEN" et LOTUS 9.0.
    Le VBA ne fonctionne plus.

    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
    Private Sub CommandButton6_Click()
    ' Bouton MAIL LOTUS
    Dim Semaine As String
    Dim Annee As Integer
    Dim NomDuFichier As String
     
    Application.ScreenUpdating = False
    '------- compléter les variables nécessaires pour envoi --------------
    Semaine = InputBox("Saisir le Numéro de semaine (Exemple: S6)")
    If Semaine = "" Then GoTo FinMail ' Sort si aucune valeur ou Annuler
    Annee = InputBox("Saisir l'année (Exemple: 2015)")
     
    NomDuFichier = Semaine & "_" & Annee & ".xls"
     
        AdresDestinataire$ = "toto@free.fr;tata@free.fr;pepe@free.fr" 'si plusieurs adresses s_parer par le point virgule !
        Sujet$ = "Astreintes Groupe Incendie" ' sujet
        Message$ = "Veuillez trouver ci-joint le fichier relatif à la semaine" & " " & Semaine ' message
        Fichier$ = NomDuFichier   ' "NomDuFichier.xls"
        Chemin$ = "X:\bidon\Sauvegardes\" ' chemin du fichier exp: = ThisWorkbook.Path
        If Chemin$ > "" And Right(Chemin$, 1) <> "\" Then Chemin$ = Chemin$ & "\"
        CheminEtFichier$ = Chemin$ & Fichier$
     
    '------ départ envoi messagerie --------
    'met en tableau si plusieurs adresses !?
            If InStr(AdresDestinataire$, ";") = 0 Then AdresDestinataire$ = AdresDestinataire$ & ";"
    Dim TabloAdresDestin As Variant
    TabloAdresDestin = Split(AdresDestinataire$, ";")
     
    '------ Préparation session ------
    On Error GoTo ErreurNET: Err.Clear
     
    Dim oSession As Object     ' CreateObject("Notes.NotesSession")
    Dim UserName As String     ' Nom d'utilisateur
    Dim DataBase As Object     ' Base des mails
    Dim DataBaseName As String ' Nom de la base
    Dim Document As Object     ' Mail
    Dim AttachME As Object     ' Fich joint en RTF
    Dim AttachF1 As Object     '1' pièce attach_e
     
    ' Création de la session
    Set oSession = CreateObject("Notes.NotesSession")
     
    ' Récupération du nom d'utilisateur
    UserName = oSession.UserName
    DataBaseName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
     
    ' Ouvre la base des mails (si fermé, ouvre et demande le password)
    Set DataBase = oSession.GetDataBase("", DataBaseName)
            If Not DataBase.IsOpen Then DataBase.OpenMail
     
                ' Boucle envoi au(x) destinataire(s)
                For i = LBound(TabloAdresDestin) To UBound(TabloAdresDestin)
                    If Trim(TabloAdresDestin(i)) > "" Then
                    AdresDestinataire$ = TabloAdresDestin(i)
     
        ' Crée le document et colle /AdresDestinataire /Sujet /Message
        Set Document = DataBase.CreateDocument
        Document.Form = "Memo"
        Document.Sendto = AdresDestinataire$
        Document.Subject = Sujet$
        Document.Body = Message$
     
        ' Joint le Fichier s'il y a !?
                        If CheminEtFichier$ <> "" Then
                            Set AttachME = Document.CreateRichTextItem("Attachment")
                            Set AttachF1 = AttachME.EmbedObject(1454, "", CheminEtFichier, "Attachment")
                        End If
        ' Envoi le Mail
        Document.SaveMessageOnSend = True ' True = save dans les courriers envoyés
        Document.PostedDate = Now() ' Date du jour
        Document.Send 0, AdresDestinataire$ ' Envoi
     
        PlaySound "D:\Sauvegardes\Mail_Sent.wav", ByVal 0&, SND_FILENAME Or SND_ASYNC
     
        ' Reinit adresse suivante !?
        Set Document = Nothing: Set AttachME = Nothing: Set AttachF1 = Nothing
                    End If
                Next
     
    GoTo FinMail ' Fin ########################################################
     
    ErreurNET:
    Msg$ = "Erreur " & Err.Source & "  No " & Err.Number & vbLf & vbLf & Err.Description
    T$ = "Envoi Mail: Problème de connexion !?"
    MsgBox Msg$, vbCritical, T$, Err.HelpFile, Err.HelpContext
    GoTo FinMail
     
    FinMail:
    ' Libère les variables Object
    Set oSession = Nothing: Set DataBase = Nothing
    Set Document = Nothing: Set AttachME = Nothing: Set AttachF1 = Nothing
    On Error GoTo 0: Err.Clear
    Application.ScreenUpdating = True
     
    End Sub

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 103
    Points : 9 908
    Points
    9 908
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    un peu vague "le vba ne fonctionne plus"

    erreur ? Quel message ? Quelle ligne de code plante ?
    Bref, un minimum syndical quoi

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Bonjour joe.levrai,
    C'est un message d'erreur de LOTUS. Je regarde demain au boulot et le dépose dans la foulée.
    @+

  4. #4
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 103
    Points : 9 908
    Points
    9 908
    Billets dans le blog
    5
    Par défaut
    Quand lotus "va planter", ça va probablement faire planter ta procédure VBA derrière je présume.
    vérifie bien si c'est le cas ou non pour récupérer le numéro d'erreur VBA, sa description, et regarder la ligne de code qui sera en jaune (c'est elle qui a planté)

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Bonjour joe.levrai,
    En fait le code fonctionne toujours, le problème venait du chemin temporaire du
    classeur à envoyer qui n'était pas bon.
    Désolé pour le dérangement.
    Bonne journée,
    A bientôt.

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

Discussions similaires

  1. [XL-2007] Envoi classeur par mail sans sauvegarde
    Par Halo2550 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/05/2013, 19h56
  2. Réponses: 5
    Dernier message: 24/02/2012, 20h50
  3. [XL-2003] envoi automatique d'un tableau par mail
    Par mael86 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 11/12/2009, 12h49
  4. envoie automatique d'un pdf par mail via redmon
    Par ipeteivince dans le forum Windows
    Réponses: 2
    Dernier message: 29/08/2006, 19h01
  5. Réponses: 5
    Dernier message: 18/04/2006, 09h40

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