bonjour, mon soucie par rapport a mon code c'est que je suis obligé d’ouvrir outlook manuellement pour que le mail s'envoie car il reste bloquée dans la boite d'envoie si je ne le fait pas. Je tient a précisé que j'ai recherché par mais propre moyen mais je ne trouve pas la solution à mon problème. Merci d'avance pour le coup de main que vous pourriez m'apporter.
je vous laisse le code ici:
Option Explicit
Private Sub CommandButton1_Click()
Dim LeMail As Variant
Dim fichier As String
Set LeMail = CreateObject("Outlook.Application")
With LeMail.CreateItem(olMailItem)
.To = "adresse du destinataire"
Function ExistenceFichier(sFichier As String) As Boolean
ExistenceFichier = Dir(sFichier) <> ""
End Function
Sub EnvoiMail()
Dim objMail As Outlook.MailItem
Dim outapp As Outlook.Application
Set outapp = New Outlook.Application
Dim X As Object
Dim sNomFichier As String
sNomFichier = Sheets("Config").Range("L11").Value
'Le chemin de Outlook.exe sera alors indiqué en case L11, dans un onglet nommé “Config” car il diffère effectivement en fonction de la version de votre 'Office, ... Chaque utilisateur pourra donc écrire dans cet onglet de configuration le chemin de leur Outlook.exe
On...
=>patricktoulon
C'est bien ce j'ai suggéré en message#2, non ?
Mais avec les commentaires en moins
Et sans emoticons, ce qui je l'avoue, rendait mon message moins rigolo.
a ben moi quand je suis mort de rire je l'exprime
une autre raison du ridicule de la chose
VB:
'sNomFichier = "C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE" 'si le programme n'est destiné qu'à votre seul PC vous pouvez écrire ici le chemin exact de votre Outlook.exe, sinon écrivez:
sNomFichier = Sheets("Config").Range("L11").Value
c'est ID = Shell(sNomFichier)
alors c'est pas office 12 c'est pas possible
office 12 c'est office 2007
Dim outapp As Outlook.Application
ou
dim outapp as object
set outapp=createobject("outlook.application")
épicétoo!!!
vue que tu a l'air bien caller pourrait tu voir pour mon probleme, j'ai tester le code du deuxieme message mais celui-ci reste bloquer dans la boite d'envoie si je n'ouvre pas Outlook manuellement. que ce soit avec la selection display et send.
Private Sub CommandButton1_Click()
Dim LeMail As Object
Dim fichier As String
Set LeMail = CreateObject("Outlook.Application")
With LeMail.CreateItem(olMailItem)
.To = "adresse du destinataire"
fichier = "E:\nomfichier.zip"
.Attachments.Add fichier
'.Display
.Send
End With
End Sub
???
C'est la bonne question (mais tu ne donnes pas la réponse)
Mais ce n'est pas le code VBA du message#10
Code qui permettait de voir si il y avait un souci ou pas au niveau de la pièce jointe.
chez moi le code de post#2 fonctionne en display et send
VB:
Sub test()
Dim LeMail As Object
Dim fichier As String
Set LeMail = CreateObject("Outlook.Application")
With LeMail.CreateItem(olMailItem)
.To = "toto@hotmail.fr"
.SentOnBehalfOfName = "trucmachin@domain.com"
fichier = "E:\toto.zip"
.Attachments.Add fichier
.Subject = "test de mail outlook vba "
.body = " allo! comment va tu "
.Display
'.Send
End With
End Sub
chez moi le code de post#2 fonctionne en display et send
VB:
Sub test()
Dim LeMail As Object
Dim fichier As String
Set LeMail = CreateObject("Outlook.Application")
With LeMail.CreateItem(olMailItem)
.To = "toto@hotmail.fr"
.SentOnBehalfOfName = "trucmachin@domain.com"
fichier = "E:\toto.zip"
.Attachments.Add fichier
.Subject = "test de mail outlook vba "
.body = " allo! comment va tu "
.Display
'.Send
End With
End Sub
=>crurik
La question était
Qu'affiche le MsgBox?
Tu ne donnes pas la réponse !
Tu disais avoir un problème pour joindre un fichier
Ce bout de code servait uniquement à savoir si le chemin (nom du dossier) et le fichier (nom du fichier) sont bons.
Car si le MsgBox affiche une chaine de caractère représentant un chemin invalide, c'est normal qu'il y ait un problème pour joindre le fichier.
=>crurik
La question était
Qu'affiche le MsgBox?
Tu ne donnes pas la réponse !
Tu disais avoir un problème pour joindre un fichier
Ce bout de code servait uniquement à savoir si le chemin (nom du dossier) et le fichier (nom du fichier) sont bons.
Car si le MsgBox affiche une chaine de caractère représentant un chemin invalide, c'est normal qu'il y ait un problème pour joindre le fichier.