XL 2016 erreur d'execution 1004 suite macro

gilles37

XLDnaute Junior
Bonjour à tous,

J'ai un bouton sur une feuille qui ouvre un inputbox ( composé d'une fenêtre de saisie, d'un bouton Ok et d'un bouton ANNULER) afin d'y renseigner le dossier de destination d'enregistrement en PDF.
Je renseigne le nom du dossier, la feuille active est enregistrée en PDF dans le dossier voulu--->pas de souci
Le probleme, si je fais annuler, j'ai une erreur d’exécution 1004

ci-dessous la macro

Sub enregistrePOI()
Dim NomDossier As String
Dim CheminDossier As String

'On Error GoTo 1

NomDossier = Application.InputBox("dossier Enregistrement :", "dossier")
CheminDossier = "E:\Bibliothèques\Documents\POI\" & NomDossier & "\"

If NomDossier = "" Then Exit Sub


'enregistrement en pdf
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
CheminDossier & "POI_" & Range("D4").Value & Cells(2.5).Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
From:=1, To:=1, OpenAfterPublish:=False


End Sub

Merci pour votre aide
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum


Regardes ce petit exemple (en guise d'inspiration)
VB:
Sub test_InputBox()
Dim iBox As Variant
iBox = Application.InputBox("Texte à saisir")
If iBox = False Then
    MsgBox "Saisie annulée"
ElseIf iBox = "" Then
    MsgBox "Attention saisie vide"
Else
    MsgBox iBox
End If
End Sub
 

BrunoM45

XLDnaute Barbatruc
Bonjour Gilles37, Salut l'agrafe ;)

Simple, ton test ne se trouve pas au bon endroit et n'est pas complet
Code:
Sub enregistrePOI()
  Dim NomDossier As Variant
  Dim CheminDossier As String

  On Error Resume Next

  NomDossier = Application.InputBox("dossier Enregistrement :", "dossier")
  ' Si l'utilisateur à annulé la procédure, on sort
  If NomDossier = "" Or NomDossier = False Then Exit Sub
  ' Sinon
  CheminDossier = "E:\Bibliothèques\Documents\POI\" & NomDossier & "\"
  'enregistrement en pdf
  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                                  CheminDossier & "POI_" & Range("D4").Value & Cells(2.5).Value & ".pdf", Quality:= _
                                  xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
                                  From:=1, To:=1, OpenAfterPublish:=False
End Sub
A+
 
Dernière édition:

BrunoM45

XLDnaute Barbatruc
Salut l'agrafe ;) et désolé, j'ai modifié mon post il me semblait t'avoir dit bonjour :p
 

gilles37

XLDnaute Junior
Bonjour BrunoM45, Staple1600 et bonjour le forum

Merci a vous, mais j'ai une erreur lors de l'enregistrement en PDF sur le dossier choisi:(

L'erreur surlignée en jaune est : If NomDossier = "" Or NomDossier = False Then Exit Sub
message: erreur d'execution13 incompatibilite de type

Je vous avoue, je ne comprend pas.
Ci-joint le fichier
Merci pour votre aide;)
 

Fichiers joints

Jacky67

XLDnaute Accro
Bonjour à tous,
A modifier
Dim NomDossier As String
Par
Dim NomDossier As Variant
 

Fichiers joints

Dernière édition:

gilles37

XLDnaute Junior
Bonjour le forum, bonjour jacky67
Je ne cherchais pas l'erreur a ce niveau.
Bien vu! çà fonctionne.:)

effectivement la variable "As String" déclare du texte contrairement "As Variant" qui déclare tout type de données
Encore merci a vous, le forum ;)
 

Jacky67

XLDnaute Accro
Bonjour le forum, bonjour jacky67
effectivement la variable "As String" déclare du texte contrairement "As Variant" qui déclare tout type de données
Re..
Si l'on souhaite garder la variable "As String" , c'est faisable en modifiant cette ligne.
If NomDossier = "" Or NomDossier = False Then Exit Sub
par
If NomDossier = "" Or NomDossier = "Faux" Then Exit Sub
C'est peu orthodoxe , mais cela fonctionne
 

gilles37

XLDnaute Junior
Bonjour le forum
Vos aides ont été précieuses.
Avez vous une idée sur le problème suivant:
La génération du pdf qui est enregistré dans dossier fonctionne à la perfection sur plusieurs pc Sauf un qui n enregistre pas le pdf pourquoi ?

Merci
 

Jacky67

XLDnaute Accro
Bonjour le forum
Vos aides ont été précieuses.
Avez vous une idée sur le problème suivant:
La génération du pdf qui est enregistré dans dossier fonctionne à la perfection sur plusieurs pc Sauf un qui n enregistre pas le pdf pourquoi ?

Merci
Re...
Peut-être parce qu'il n'est pas équipé d'Excel 2007 ou +
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas