Automatiser chemin d'un fichier en pièce jointe

Salut le forum

Je viens solliciter votre aide pour faciliter le déploiement d'un fichier sur plusieur machine.

En effet, je dois à chaque installation du fichier, adapter le chemin d'accès des fichier en focntion de la session de l'utilisateur.

Il s'agit dans le code ci-dessous des fichier en attach.

Comment faire pou^r automatiser le chemin d'accès des fichiers?

Sub Mail_PA()
' Works in Excel 2000, Excel 2002, Excel 2003, Excel 2007, Excel 2010, Outlook 2000, Outlook 2002, Outlook 2003, Outlook 2007, Outlook 2010.
' This example sends the last saved version of the Activeworkbook object .
    Dim OutApp As Object
    Dim OutMail As Object
    Dim texte As String
    Dim I As String
    Dim NomFic As String, spath As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    I = Range("B29").Value
    texte = texte & Range("B39").Value & " le, " & Range("E17").Value & vbCrLf & vbCrLf
    texte = texte & "A" & vbCrLf

    On Error Resume Next

    With OutMail
        .To = Range("b29").Value
        .CC = ""
        .BCC = ""
        .Subject = "Bienvenue dans votre"
        .Body = texte
        .Attachments.Add ("C:\Documents and Settings\bf0117\mes documents\SGIIOC\Notice d'information.pdf")
        .Attachments.Add ("C:\Documents and Settings\bf0117\bureau\mes documents\Notice d'information2.pdf")
               .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing

End Sub

Merci d'avance

Bonsoir Zombe

Dis voir je n'ai pas déjà répondu à ce sujet

https://forum.excel-pratique.com/post166980.html#p166662

C'est quoi ce multi-postage pour le même problème

Salut BrunoM45

Le sujet dont vous faites allusion n'a pas eu de dernière réponse de votre part.

Voila pourquoi j'ai ouvert une nouvelle discussion. J'ai bien précisé dans le dernier message du sujet dont vous faites allusion que je n'arrivais pas malgré vos explications à l'adapter au code de la présente discussion.

merci

Bonjour,

Merci pour tes brillantes explications qui m'ont permis de comprendre ton code.

Et bien heureusement

J'ai tenté de d'ajuster avec le code ci-dessous notamment pour les pièces jointes mais je passe à côté.

Je préfère mettre tout le code afin que vous puissiez m'aider.

Dans le code donné tu n'as même pas mis ce que tu as essayé de faire .. si tu as essayé

Salut

Voici ce que j'avais pu essayé pour appréciation:

Sub Mail_PA()
' Works in Excel 2000, Excel 2002, Excel 2003, Excel 2007, Excel 2010, Outlook 2000, Outlook 2002, Outlook 2003, Outlook 2007, Outlook 2010.
' This example sends the last saved version of the Activeworkbook object .
    Dim OutApp As Object
    Dim OutMail As Object
    Dim texte As String
    Dim I As String
    Dim NomFic As String, spath As String
    spath = spath & "\mes documents\SGIIOC\"
    NomFic = "conditions générales PEA.pdf"

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    I = Range("B29").Value
    texte = texte & Range("B39").Value & " le, " & Range("E17").Value & vbCrLf & vbCrLf
    texte = texte & "A" & vbCrLf

    On Error Resume Next

    With OutMail
        .To = Range("b29").Value
        .CC = ""
        .BCC = ""
        .Subject = "Bienvenue dans votre"
        .Body = texte
        .Attachments.Add spath = spath & " " & NomFic

               .Send
    End With
    On Error GoTo 0
Set OutMail = Nothing
    Set OutApp = Nothing

End Sub

Zombe,

STP, il faut essayer de suivre à la lettre ce que l'on te donne

Ce qui aurait donné

Sub Mail_PA()
' Works in Excel 2000, Excel 2002, Excel 2003, Excel 2007, Excel 2010, Outlook 2000, Outlook 2002, Outlook 2003, Outlook 2007, Outlook 2010.
' This example sends the last saved version of the Activeworkbook object .
   Dim OutApp As Object
    Dim OutMail As Object
    Dim texte As String
    Dim I As String
    Dim NomFic As String, spath As String
  ' Récupérer le chemin du profil de l'utilisateur
  sPath = Environ("USERPROFILE")
  ' Le dossier Mes Documents doit être dedans, l'ajouter
    spath = spath & "\mes documents\SGIIOC\"
    NomFic = "conditions générales PEA.pdf"

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    I = Range("B29").Value
    texte = texte & Range("B39").Value & " le, " & Range("E17").Value & vbCrLf & vbCrLf
    texte = texte & "A" & vbCrLf

    On Error Resume Next

    With OutMail
        .To = Range("b29").Value
        .CC = ""
        .BCC = ""
        .Subject = "Bienvenue dans votre"
        .Body = texte
  ' J'avais mis : ShellExecute x, "print", sPath & NomFic, "", "", 1
  ' Donc pour le chemin d'accès complet c'est également
        .Attachments.Add spath & NomFic
        .Send
    End With
    On Error GoTo 0
Set OutMail = Nothing
    Set OutApp = Nothing

End Sub

Essaye ça et dis nous

A+

Merci pour ta solution.

J'ai oublié cette partie du code sPath = Environ("USERPROFILE")

Sinon que je reussi toujours la ou vous m'aider.

Merci encore pour la correction.

Rechercher des sujets similaires à "automatiser chemin fichier piece jointe"