Bonjour à tous et à toutes.
J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces
jointes :
Sub Mail_Avec_Fichier_Joint(destinataire)
Dim outlookapp As Outlook.Application
Dim OutParam As Outlook.MailItem
Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker)
Afj.InitialFileName = "c:\"
Set outlookapp = Outlook.Application
Set OutParam = outlookapp.CreateItem(olMailItem)
With OutParam
.To = destinataire
.Subject = objet
.Body = "Merci de traiter rapidement cette demande"
line10:
If PJ = False Then GoTo line20
On Error Resume Next
Afj.Show
.Attachments.Add Afj.SelectedItems(1)
réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
vbYesNo,
If réponse = 6 Then GoTo line10
line20:
.Send
End With
End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces
jointes sur un disque réseau….
Merci de votre aide…. toujours précieuse.
attention: les noms des chemins doivent être complets à partir du Drive
à signaler aussi If FSO.FileExists(NomComplet) = True Then FSO.DeleteFile NomComplet car j'ai constaté que certains serveurs <n'aiment> pas remplacer un fichier déjà existant quelquefois, il faut aussi utiliser ChDrive
Si cela peut t'aider, cordialement Papy Jean
"StDonat" a écrit dans le message de news:
Bonjour à tous et à toutes. J'utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces jointes :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 On Error Resume Next Afj.Show .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo, If réponse = 6 Then GoTo line10 line20: .Send End With End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces jointes sur un disque réseau.. Merci de votre aide.. toujours précieuse.
Bonjour
Voici une solution pour copier des fichiers avec Excel
Public FSO As Object
Set FSO = CreateObject("Scripting.Filesystemobject")
attention: les noms des chemins doivent être complets à partir du Drive
à signaler aussi
If FSO.FileExists(NomComplet) = True Then FSO.DeleteFile NomComplet
car j'ai constaté que certains serveurs <n'aiment> pas remplacer un fichier
déjà existant
quelquefois, il faut aussi utiliser ChDrive
Si cela peut t'aider, cordialement
Papy Jean
"StDonat" <StDonat@discussions.microsoft.com> a écrit dans le message de
news: 5086D418-214A-487B-803A-512667533214@microsoft.com...
Bonjour à tous et à toutes.
J'utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces
jointes :
Sub Mail_Avec_Fichier_Joint(destinataire)
Dim outlookapp As Outlook.Application
Dim OutParam As Outlook.MailItem
Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker)
Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application
Set OutParam = outlookapp.CreateItem(olMailItem)
With OutParam
.To = destinataire
.Subject = objet
.Body = "Merci de traiter rapidement cette demande"
line10:
If PJ = False Then GoTo line20
On Error Resume Next
Afj.Show
.Attachments.Add Afj.SelectedItems(1)
réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
vbYesNo,
If réponse = 6 Then GoTo line10
line20:
.Send
End With
End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des
pièces
jointes sur un disque réseau..
Merci de votre aide.. toujours précieuse.
attention: les noms des chemins doivent être complets à partir du Drive
à signaler aussi If FSO.FileExists(NomComplet) = True Then FSO.DeleteFile NomComplet car j'ai constaté que certains serveurs <n'aiment> pas remplacer un fichier déjà existant quelquefois, il faut aussi utiliser ChDrive
Si cela peut t'aider, cordialement Papy Jean
"StDonat" a écrit dans le message de news:
Bonjour à tous et à toutes. J'utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces jointes :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 On Error Resume Next Afj.Show .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo, If réponse = 6 Then GoTo line10 line20: .Send End With End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces jointes sur un disque réseau.. Merci de votre aide.. toujours précieuse.
Daniel.C
Bonjour. Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant sur la ligne : If PJ = False Then GoTo line20 tu vas te débrancher direct à line20 et sauter la partie pièces jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 PJ = False On Error Resume Next Afj.Show '*** ligne de recopie dans le dossier N:Dossier FileCopy Afj.SelectedItems(1), "N:Dossier" & Dir(Afj.SelectedItems(1)) .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo) If réponse = 6 Then PJ = True GoTo line10 End If line20: .Send End With End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le fichier original. Cordialement. Daniel
Bonjour à tous et à toutes. J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces jointes :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 On Error Resume Next Afj.Show .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo, If réponse = 6 Then GoTo line10 line20: .Send End With End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces jointes sur un disque réseau…. Merci de votre aide…. toujours précieuse.
Bonjour.
Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant
sur la ligne :
If PJ = False Then GoTo line20
tu vas te débrancher direct à line20 et sauter la partie pièces
jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire)
Dim outlookapp As Outlook.Application
Dim OutParam As Outlook.MailItem
Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker)
Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application
Set OutParam = outlookapp.CreateItem(olMailItem)
With OutParam
.To = destinataire
.Subject = objet
.Body = "Merci de traiter rapidement cette demande"
line10:
If PJ = False Then GoTo line20
PJ = False
On Error Resume Next
Afj.Show
'*** ligne de recopie dans le dossier N:Dossier
FileCopy Afj.SelectedItems(1), "N:Dossier" &
Dir(Afj.SelectedItems(1))
.Attachments.Add Afj.SelectedItems(1)
réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
vbYesNo)
If réponse = 6 Then
PJ = True
GoTo line10
End If
line20:
.Send
End With
End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le
fichier original.
Cordialement.
Daniel
Bonjour à tous et à toutes.
J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces
jointes :
Sub Mail_Avec_Fichier_Joint(destinataire)
Dim outlookapp As Outlook.Application
Dim OutParam As Outlook.MailItem
Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker)
Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application
Set OutParam = outlookapp.CreateItem(olMailItem)
With OutParam
.To = destinataire
.Subject = objet
.Body = "Merci de traiter rapidement cette demande"
line10:
If PJ = False Then GoTo line20
On Error Resume Next
Afj.Show
.Attachments.Add Afj.SelectedItems(1)
réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
vbYesNo,
If réponse = 6 Then GoTo line10
line20:
.Send
End With
End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces
jointes sur un disque réseau….
Merci de votre aide…. toujours précieuse.
Bonjour. Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant sur la ligne : If PJ = False Then GoTo line20 tu vas te débrancher direct à line20 et sauter la partie pièces jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 PJ = False On Error Resume Next Afj.Show '*** ligne de recopie dans le dossier N:Dossier FileCopy Afj.SelectedItems(1), "N:Dossier" & Dir(Afj.SelectedItems(1)) .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo) If réponse = 6 Then PJ = True GoTo line10 End If line20: .Send End With End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le fichier original. Cordialement. Daniel
Bonjour à tous et à toutes. J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces jointes :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 On Error Resume Next Afj.Show .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo, If réponse = 6 Then GoTo line10 line20: .Send End With End Sub
Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces jointes sur un disque réseau…. Merci de votre aide…. toujours précieuse.
StDonat
Merci à vous deux pour les réponses aussi rapide. J'ai choisi la methode de Daniel qui me parait plus simple.
PS: en effet ma variable PJ n'est pas initialisé mais c'est une variable public et je n'ai publié ici qu'un extrait de mon code.
Encore merci
"Daniel.C" wrote:
Bonjour. Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant sur la ligne : If PJ = False Then GoTo line20 tu vas te débrancher direct à line20 et sauter la partie pièces jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 PJ = False On Error Resume Next Afj.Show '*** ligne de recopie dans le dossier N:Dossier FileCopy Afj.SelectedItems(1), "N:Dossier" & Dir(Afj.SelectedItems(1)) .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo) If réponse = 6 Then PJ = True GoTo line10 End If line20: .Send End With End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le fichier original. Cordialement. Daniel
> Bonjour à tous et à toutes. > J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces > jointes : > > Sub Mail_Avec_Fichier_Joint(destinataire) > Dim outlookapp As Outlook.Application > Dim OutParam As Outlook.MailItem > Dim Afj As FileDialog > > Set Afj = Application.FileDialog(msoFileDialogFilePicker) > Afj.InitialFileName = "c:" > > Set outlookapp = Outlook.Application > Set OutParam = outlookapp.CreateItem(olMailItem) > With OutParam > .To = destinataire > .Subject = objet > .Body = "Merci de traiter rapidement cette demande" > line10: > If PJ = False Then GoTo line20 > On Error Resume Next > Afj.Show > .Attachments.Add Afj.SelectedItems(1) > réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", > vbYesNo, > If réponse = 6 Then GoTo line10 > line20: > .Send > End With > End Sub > > Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces > jointes sur un disque réseau…. > Merci de votre aide…. toujours précieuse.
Merci à vous deux pour les réponses aussi rapide.
J'ai choisi la methode de Daniel qui me parait plus simple.
PS: en effet ma variable PJ n'est pas initialisé mais c'est une variable
public et je n'ai publié ici qu'un extrait de mon code.
Encore merci
"Daniel.C" wrote:
Bonjour.
Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant
sur la ligne :
If PJ = False Then GoTo line20
tu vas te débrancher direct à line20 et sauter la partie pièces
jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire)
Dim outlookapp As Outlook.Application
Dim OutParam As Outlook.MailItem
Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker)
Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application
Set OutParam = outlookapp.CreateItem(olMailItem)
With OutParam
.To = destinataire
.Subject = objet
.Body = "Merci de traiter rapidement cette demande"
line10:
If PJ = False Then GoTo line20
PJ = False
On Error Resume Next
Afj.Show
'*** ligne de recopie dans le dossier N:Dossier
FileCopy Afj.SelectedItems(1), "N:Dossier" &
Dir(Afj.SelectedItems(1))
.Attachments.Add Afj.SelectedItems(1)
réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
vbYesNo)
If réponse = 6 Then
PJ = True
GoTo line10
End If
line20:
.Send
End With
End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le
fichier original.
Cordialement.
Daniel
> Bonjour à tous et à toutes.
> J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces
> jointes :
>
> Sub Mail_Avec_Fichier_Joint(destinataire)
> Dim outlookapp As Outlook.Application
> Dim OutParam As Outlook.MailItem
> Dim Afj As FileDialog
>
> Set Afj = Application.FileDialog(msoFileDialogFilePicker)
> Afj.InitialFileName = "c:"
>
> Set outlookapp = Outlook.Application
> Set OutParam = outlookapp.CreateItem(olMailItem)
> With OutParam
> .To = destinataire
> .Subject = objet
> .Body = "Merci de traiter rapidement cette demande"
> line10:
> If PJ = False Then GoTo line20
> On Error Resume Next
> Afj.Show
> .Attachments.Add Afj.SelectedItems(1)
> réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?",
> vbYesNo,
> If réponse = 6 Then GoTo line10
> line20:
> .Send
> End With
> End Sub
>
> Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces
> jointes sur un disque réseau….
> Merci de votre aide…. toujours précieuse.
Merci à vous deux pour les réponses aussi rapide. J'ai choisi la methode de Daniel qui me parait plus simple.
PS: en effet ma variable PJ n'est pas initialisé mais c'est une variable public et je n'ai publié ici qu'un extrait de mon code.
Encore merci
"Daniel.C" wrote:
Bonjour. Bizarre, ton code, la variable PJ n'étant pas initialisée, en arrivant sur la ligne : If PJ = False Then GoTo line20 tu vas te débrancher direct à line20 et sauter la partie pièces jointes.
Essaie :
Sub Mail_Avec_Fichier_Joint(destinataire) Dim outlookapp As Outlook.Application Dim OutParam As Outlook.MailItem Dim Afj As FileDialog
Set Afj = Application.FileDialog(msoFileDialogFilePicker) Afj.InitialFileName = "c:"
Set outlookapp = Outlook.Application Set OutParam = outlookapp.CreateItem(olMailItem) With OutParam .To = destinataire .Subject = objet .Body = "Merci de traiter rapidement cette demande" line10: If PJ = False Then GoTo line20 PJ = False On Error Resume Next Afj.Show '*** ligne de recopie dans le dossier N:Dossier FileCopy Afj.SelectedItems(1), "N:Dossier" & Dir(Afj.SelectedItems(1)) .Attachments.Add Afj.SelectedItems(1) réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", vbYesNo) If réponse = 6 Then PJ = True GoTo line10 End If line20: .Send End With End Sub
Le fichier sauvegardé sur le disque réseau porte le même nom que le fichier original. Cordialement. Daniel
> Bonjour à tous et à toutes. > J’utilise, grâce à ce forum, un code pour envoyer un mail avec des pièces > jointes : > > Sub Mail_Avec_Fichier_Joint(destinataire) > Dim outlookapp As Outlook.Application > Dim OutParam As Outlook.MailItem > Dim Afj As FileDialog > > Set Afj = Application.FileDialog(msoFileDialogFilePicker) > Afj.InitialFileName = "c:" > > Set outlookapp = Outlook.Application > Set OutParam = outlookapp.CreateItem(olMailItem) > With OutParam > .To = destinataire > .Subject = objet > .Body = "Merci de traiter rapidement cette demande" > line10: > If PJ = False Then GoTo line20 > On Error Resume Next > Afj.Show > .Attachments.Add Afj.SelectedItems(1) > réponse = MsgBox("Voulez-vous joindre d'autres fichiers ?", > vbYesNo, > If réponse = 6 Then GoTo line10 > line20: > .Send > End With > End Sub > > Mon problème : Je voudrais en plus sauvegarder (créer une copie) des pièces > jointes sur un disque réseau…. > Merci de votre aide…. toujours précieuse.