OVH Cloud OVH Cloud

choix d'attachement sous outlook avec VBA

2 réponses
Avatar
ionel.sbiera
Hello tous,
Ma question est simple. J'utilise ce code pour ajouter une piece jointe
variable aux emails que j'envoie automatique:

Sub Send()
Dim Outlookapp As Outlook.Application
Dim MItem As Outlook.MailItem
Dim Subj As String
Dim EmailAddr As String, ccemails As String
Dim Msg As String
.=2E....
With MItem
.To =3D EmailAddr
.CC =3D ccemails
.Subject =3D Subj
.Attachments.Add (InputBox("Please insert the file's path:",
"Path", "S:\OPERATIONS\"))
.Body =3D Msg
.Send
End With
End Sub

Le probleme c'est que chaque fois je suis oblig=E9 d'ecrire le chemin du
fichier que je veux mettre en piece jointe(j'ai mis par defaut une
partie du chemin S:\OPERATIONS\, mais ca reste toujours pas convivial).
Est'ce qu'il existe une possibilit=E9 d'apeller une fenetre gendre
GetOpenFile pour que je puisse faire le choix du fichier =E0 mettre en
piece jointe?
merci mille fois d'avance pour toute id=E9e ou solution!

2 réponses

Avatar
Nicolas B.
Salut,

Avec GetOpenFilename :
.Attachments.Add Application.GetOpenFilename("Tous les fichiers,*.*")

Mais si tu veux sélectionner un dossier par défaut, utilise plutôt
FileDialog :

With MItem
'...
Dim ofd As FileDialog
Set ofd = Application.FileDialog(msoFileDialogOpen)
ofd.InitialFileName = "S:OPERATIONS"
ofd.Show
.Attachments.Add ofd.SelectedItems(1)
'...
End With


A+
Nicolas B.

Hello tous,
Ma question est simple. J'utilise ce code pour ajouter une piece jointe
variable aux emails que j'envoie automatique:

Sub Send()
Dim Outlookapp As Outlook.Application
Dim MItem As Outlook.MailItem
Dim Subj As String
Dim EmailAddr As String, ccemails As String
Dim Msg As String
.......
With MItem
.To = EmailAddr
.CC = ccemails
.Subject = Subj
.Attachments.Add (InputBox("Please insert the file's path:",
"Path", "S:OPERATIONS"))
.Body = Msg
.Send
End With
End Sub

Le probleme c'est que chaque fois je suis obligé d'ecrire le chemin du
fichier que je veux mettre en piece jointe(j'ai mis par defaut une
partie du chemin S:OPERATIONS, mais ca reste toujours pas convivial).
Est'ce qu'il existe une possibilité d'apeller une fenetre gendre
GetOpenFile pour que je puisse faire le choix du fichier à mettre en
piece jointe?
merci mille fois d'avance pour toute idée ou solution!



Avatar
Xav
Bonjour

voir le post de Rom1 du 19/07

--
Cordialement

@+
Xav
a écrit dans le message de
news:
Hello tous,
Ma question est simple. J'utilise ce code pour ajouter une piece jointe
variable aux emails que j'envoie automatique:

Sub Send()
Dim Outlookapp As Outlook.Application
Dim MItem As Outlook.MailItem
Dim Subj As String
Dim EmailAddr As String, ccemails As String
Dim Msg As String
......
With MItem
.To = EmailAddr
.CC = ccemails
.Subject = Subj
.Attachments.Add (InputBox("Please insert the file's path:",
"Path", "S:OPERATIONS"))
.Body = Msg
.Send
End With
End Sub

Le probleme c'est que chaque fois je suis obligé d'ecrire le chemin du
fichier que je veux mettre en piece jointe(j'ai mis par defaut une
partie du chemin S:OPERATIONS, mais ca reste toujours pas convivial).
Est'ce qu'il existe une possibilité d'apeller une fenetre gendre
GetOpenFile pour que je puisse faire le choix du fichier à mettre en
piece jointe?
merci mille fois d'avance pour toute idée ou solution!