Erreur VBA.

villette54

XLDnaute Junior
Bonjour à tous,

Voilà je suis débutant en VBA (j'ai commencé cette semaine à cause d'un besoin que seul VBA pouvait satisfaire).

Je ne suis pas mécontent de ce que j'ai réussi à faire, qui marchait très bien jusqu'à maintenant.. et sans prévenir comme ça j'ai maintenant une erreur dans l’exécution de ma macro, et je ne sais pas comment résoudre ce problème... J'espère que quelqu'un pourra m'aider.

Voici mon VBA complet :

Sub PDFMAIL()

Application.DisplayAlerts = False

Dim ObjOutlook
Dim oBjMail
Dim pj As String
Dim Corps As String


Sheets("RDV").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & [B2] & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False



pj = ActiveWorkbook.Path & "\" & [B2] & ".pdf"

Set ObjOutlook = CreateObject("outlook.application")
Set oBjMail = ObjOutlook.CreateItem(olMailItem)

If pj = "Faux" Then Exit Sub
If VarType(pj) = vbBoolean Then Exit Sub

Corps = [D13].Value & vbCrLf & "<br>" _
& [D14].Value & vbCrLf & "<br>" _
& [D15].Value & vbCrLf & "<br>" _
& [D16].Value & vbCrLf & "<br>" _
& [D17].Value & vbCrLf & "<br>" _
& [D18].Value & vbCrLf


With oBjMail

.To = [D5].Value
.CC = [D7].Value
.Bcc = [D9].Value
.Subject = [D11].Value
.Attachments.Add pj
.HTMLBody = ""
.BodyFormat = 2
.GetInspector.CommandBars.Item("Insert").Controls("Signature").Controls(1).Execute
.HTMLBody = Corps & oBjMail.HTMLBody
.Send

End With

Kill ActiveWorkbook.Path & "\" & [B2] & ".pdf"
Application.DisplayAlerts = True

Exit Sub
errorHandler:
MsgBox Err.Description

MsgBox "Le mail a bien été envoyé !"

End Sub


Ce que j'ai mis en gras, c'est l'endroit où est localisé mon erreur, à savoir :
VBA Runtime error : '-2147024773 (8007007b)

J'ai fais quelques recherches et voici ce que j'ai trouvé concernant cette erreur :
Code 8007007B - A filename, directory name or volume label syntax is incorrect.

D'après ce que j'ai compris, il manquerait quelque chose, un élément, un caractère ou je ne sais quoi dans cette partie de mon VBA.. Mais n'étant qu'un débutant je n'ai pas la moindre idée de ce que cela pourrait être.

En espérant que quelqu'un puisse m'aider, merci d'avance.
 
G

Guest

Guest
Re : Erreur VBA.

bonjour,

Essaie en mettant le nom de la feuille de [B2] car il se peut que tu aies lancé la macro alors que la feuille active n'était pas celle qui contient le nom du fichier

Code:
Sheets("LaFeuille").Range("B2")

Tu peux aussi déclarer une variable string :

Code:
Dim Fichier as String
Fichier = Sheets("LaFeuille").Range("B2")

'Tester:
msgbox ThisWorkBook.Path & "\" & Fichier & ".pdf"

A+
 

villette54

XLDnaute Junior
Re : Erreur VBA.

C'était effectivement ça le problème, il m'a suffit de spécifier la feuille.

Merci beaucoup pour ta réponse aussi rapide qu'efficace.

Tant que j'y suis, je ne l'avais pas spécifier mais c'est évident, le but de cette macro est d'envoyer un mail via un bouton d'action.
Est-il possible d'ajouter une confirmation avant l'envoi du mail ?
Que lorsque je clique sur le bouton, avant l'envoi du mail une boite de dialogue s'ouvre pour demander confirmation "Êtes vous sûr de vouloir envoyer ce mail ." Oui - Non
Et si je clique sur "Oui" la macro se poursuit, et sur "Non" un message "Envoi annulé" apparaît.

Merci d'avance.
 

Discussions similaires

Réponses
6
Affichages
294

Statistiques des forums

Discussions
312 111
Messages
2 085 396
Membres
102 882
dernier inscrit
Sultan94