Bonjour,

j'en appelle à vos lumières car je me casse les dents sur un problème qui me rend dingue.

Le contexte :
J'ai créé un formulaire sous excel 365 afin que mes commerciaux puissent générer un numéro dossier automatiquement.
une fois ce formulaire complété, ils lancent une macro qui ventile les infos collectées dans un tableau, créée une fiche de synthèse de l'offre, enregistre cette fiche sous format pdf sur le serveur puis envoie par mail ce fichier en pièce jointe avec moi-même comme destinataire et le commercial en copie.

Tout fonctionne sur la macro sauf à partir du moment où la macro arrive à l'envoie de fichier.
Pour compliquer le tout j'ai des commerciaux sous mac, d'autres sous PC et ils attaquent tous le fichier sur sharepoint avec ouverture locale pour faire fonctionner la macro.

Pouvez-vous m'aider à corriger ce code s'il vous plait sachant qu'il faut faire un envoi sans faire appel aux bibliothèques Outlook.

Ci-dessous le code pour créer le PDF, l'enregistrer sur le serveur et l'envoyer en pièce jointe (s'il n'est pas beau, soyez indulgents c'est mon premier) :



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
Dim sRep As String                  ' Répertoire de sauvegarde
Dim sFilename As String             ' Nom du fichier
 
 Sheets("Chrono").Select
 
 sFilename = "Chrono" & "-" & Range("A5").Value & "." & "pdf"
    'répertoire où le pdf va être sauvegardé
sRep = "\\interne\COMMERCIAL\00_Chronos\"
 
Range("C2:G50").Select
Selection.ExportAsFixedFormat _
                     Type:=xlTypePDF, _
                     FileName:=sRep & sFilename, _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False
 
 
    Dim messageHTML As Variant
    Dim objMessage As Variant
    Set objMessage = CreateObject("CDO.Message")
 
    Sheets("Chrono").Select
    Mail = Sheets("Chrono").Range("f50").Value
 
      With oBjMail
 
        .To = ""
        .Cc = Range("F50")
        .Subject = "Test PDF chrono"          ' l'objet du mail
        .Body = "Ceci est un message automatique"  'le corps du mail ..son contenu
        .Attachments.Add sRep & sFilename
        .Display  '   Ici on peut supprimer pour l'envoyer sans vérification
        .Send
 
        MsgBox "Le mail a été bien envoyé !" 'Confirmation de l'envoi
 
    End With
    Set objMessage = Nothing