[VBA EXCEL]Piece jointe outlook & textbox

Fermé
invite05 - 21 avril 2009 à 14:35
 Invite05 - 28 mai 2009 à 09:41
Bonjour,

J'ai un bouton1 qui lorsque je clique dessus me prépare un e-mail. Je souhaiterai que la macro ci-dessous fasse en sorte d'intégré le fichier dont le chemin est donné dans le Textbox1.
J'avais pensé à quelque chose dans ce style : .attachments.add = textbox1.value ou .attachments.add ="sheets("feuil1").range("A1")(la valeur du textbox est recopier dans une feuille de calcul) mais ca ne marche pas. Quelqu'un aurait une idée?

Public Sub envoyer_email()
Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim CurrFile As String

Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)
With olmail
.To = ("toto")
.Subject = ("Bonjour")
.Body = "Demande à traiter :" & Range("a1") & Chr(10) & Range("a3") & Chr(10) & Range("a4") & Chr(10) & Range("a5") & Chr(10) & Range("a6") & Chr(10) & Range("a7") & Chr(10) & Range("a8").Value
.attachments.add = ???
.Display '
End With
End Sub



Merci !
A voir également:

12 réponses

Utilisateur anonyme
21 mai 2009 à 03:15
re:

La propriété [ .Value ] n'existe pas pour un "textbox"

il faut utiliser la propriété [ .Text ].

If (Len(Useform1.textbox1.Text ) > 0) Then
    Pj = Useform1.textbox1.Text 
End If


Lupin
2
up !
1
up
0
Utilisateur anonyme
24 avril 2009 à 13:26
Bonjour,

la syntaxe serait :

.AddAttachment (TextBox1.Text)

Le TextBox1 doit être connu de la procédure !

Lupin
0
Je souhaiterai utiliser la boite de dialog GetOpenFile et renvoyer le nom du fichier selectionner dans un textbox :
Dim objShell As Object, objFolder As Object, oFolderItem As Object
Dim Chemin As String

'Affiche la boîte de dialogue "Ouvrir"
Chemin = Application.GetOpenFilename("Tous les fichiers (*.*),*.*")

'On sort si aucun fichier n'aété sélectionné ou si l'utilisateur
'a cliqué sur le bouton "Annu ler", ou sur la croix de fermeture.

On Error Resume Next
Set oFolderItem = objFolder.Items.Item
Chemin = oFolderItem.Path

UserForm1.TextBox1 = oFolderItem.Path
End Sub



puis un bouton "envoi mail" et intégrer en pièce jointe le fichier dont le chemin est renvoyé dans le textbox.
.AddAttachment (TextBox1.Text)

Ca ne marche pas merci de m'aider
0
invite05 > invite05
14 mai 2009 à 10:27
Up !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
15 mai 2009 à 12:47
Bonjour,

Exemple type :

Option Explicit

Sub Ouverture()

    Dim Chemin As Variant

    'Affiche la boîte de dialogue "Ouvrir"
    Chemin = Application.GetOpenFilename("Tous les fichiers (*.*),*.*")

    'On sort si aucun fichier n'a été sélectionné ou si l'utilisateur
    'a cliqué sur le bouton "Annuler", ou sur la croix de fermeture.

    If (Chemin <> "") Then
        If (InStr(1, Chemin, "\", vbTextCompare) > 0) Then
            UserForm1.TextBox1 = Chemin
        End If
    End If

End Sub
'


Lupin
0
Super ca marche !Merci Lupin !

Maintenant j'ai un bouton "envoi mail" et je voudrai intégrer en pièce jointe le fichier dont le chemin est renvoyé dans le textbox.
Quelque chose dans ce style dans un module "envoi Email"
.AddAttachment (TextBox1.Text)

Encore merci !
0
Utilisateur anonyme
15 mai 2009 à 17:46
re:

Il y a une question je crois ?

Ici : http://www.commentcamarche.net/forum/affich 953055 envoie d email avec vb

Message 51

Tu trouveras un exemple complet avec OutlookExpress que j'ai codé, j'ai adapté ce
code en VBS, en VBA et en VB6, pour inclure un fichier texte en pièce jointe ou incorporer
dans le corps du message.

Lupin
0
Lupin j'ai tenté de m'aider de ton message mais je rencontre un problème.
Ma macro d'envoi d'email est un module, j'ai 3 userforms avec dans chaque des textbox qui sont en liaisons avec un macro : GetOpenfile qui récupère le chemin d'un fichier.

Voici mon module d'envoi d'email :

Public Sub envoyer_email()
Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim CurrFile As Object

Dim Pj As String
Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)
Pj = Useform1.textbox1.value ???
With olmail
.To = ("svpagf")
.Subject = ("Demande à traiter")
.Body = "Demande à traiter :" & Range("a1") & Chr(10) & Range("a3")
.Display '.Send
objMail.AddAttachment (Pj)

End With
End Sub

Je pense pas que ce soit ça, si tu peux m'aider, il reste seulement ça à faire !
merci!
0
je suis sur Excel 2000
0
Super ca marche !!! Merci Lupin !
Voici le code :

Public Sub envoyer_email()
Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim CurrFile As String
Dim Pj As String
Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)


With olmail
.To = ("")
.Subject = ("")
.Body = ""
.Display
If (Len(Useform1.textbox1.Text) > 0) Then
Pj = Useform1.textbox1.Text
.Attachments.Add (Pj)
End If

End With
End Sub
0
Dernière question si j'ai 30 autres user forms comment faire pour donner l'instruction au module d'aller chercher le textbox1 contenant le chemin de la PJ dans tous les autres useforms?
For each ?
Merci !
0
UP ! Quelqu'un pourrait répondre à ma dernière questiion svp ?
Merci !
0