Macro enregistre feuilles en PDF et XLSM

Bonsoir tous le monde,

Je rencontre un soucis avec une macro qui jusque là ne me poser pas de soucis. (Macro en fin de post)

Je m'explique, dans mon classeur j'ai la macro ci-dessous qui me permet d'enregistrer 2 feuilles du classeur en PDF et en XLSM.

Lorsque je clique sur la macro, windows me propose dans quel dossier je souhaite les enregistrer, je rentre donc dans le dossier en question qui sont nommés comme ci : ECHA 279 CLIENT TEST 15 rue pierre brossolette 94300 Vincennes INSTALL LE 12 sept 17

Parfois le nom du dossier est plus court, et parfois plus long (tout depend du nom du client et de l'adresse)

Sauf que parfois j'ai une erreur 1004 avec cette ligne surligner en jaune

.SaveAs Filename:=Chemin & "\" & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled

J'ai l'impression que cela m'arrive seulement quand le nom dossier comporte trop de caractère sauf que je ne peux pas reduire le nombre de caractere de mes dossiers pour des raisons d'organisation.

Quand je reduit le nombre de caractere du dossier dans lequel je souhaite enregistrer les deux feuilles, je n'ai plus l'erreur du dessus mais celle-ci :

ERREUR D'EXECUTION 5 Argument ou appel de procedure incorrect.

Et la phrase suivante surligné en jaune.

.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & Fichier, Quality:=xlQualityStandard, IncludeDocProperties:=True, _

IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=False

Quelqu'un de pro pour m'aider svp. A savoir que récemment, j'ai changer la racine :

Avant que les problèmes arrive c’était :

"g:\Dropbox\ANN juliloli\Installations\"

Et depuis que j'ai changer comme ci-dessous je rencontre les deux soucis décris ci-dessus.

"g:\Dropbox\Dropbox ANN juliloli\ANN juliloli\Installations\"

MACRO CI DESSOUS.

Sub enregistreconsigneraccordement()
Dim Chemin As String, Fichier As String
Dim LesFeuilles, i As Integer

  With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = "g:\Dropbox\Dropbox ANN juliloli\ANN juliloli\Installations\"
    If .Show = -1 Then        ' Clic sur Ok
     Chemin = .SelectedItems(1)
    Else
      ' Clic sur Annuler
     Exit Sub
    End If
  End With

  LesFeuilles = Array("fiche consigne", "fiche raccordement")
  For i = 0 To UBound(LesFeuilles)
    With Sheets(LesFeuilles(i))
      Fichier = .Range("E6") & " " & .Range("E8")
      If i = 0 Then Fichier = Fichier & " " & .Range("E9")    ' Pour la fiche consigne on rajoute E9
     If Len(Trim(Fichier)) = 0 Then
        MsgBox "Pas de nom de fichier pour la page """ & LesFeuilles(i) & """"
        Exit Sub
      End If

      .Copy
      With ActiveWorkbook
        .SaveAs Filename:=Chemin & "\" & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled
        .Close
      End With

      .ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & Fichier, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
                                               IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=False
    End With
  Next i
End Sub

Re tous le monde,

ALors je viens de faire des test avec le nom du dossier dans lequel je souhaite enregistrer les deux feuilles grace à ma macro.

il s'avere que :

Si mon dossier comporte 76 caracteres (espace compris) ca fonctionne nikel, par contre 77 caracteres ca me fait les erreurs decris dans mon 1er post.

Sauf que si je limite mon dossier à 76 caracteres il me manque environ 30 caracteres obligatoire pour mon organisation interne.

Quelqu'un à une idée de comment contourner ce probleme.

Au total, j'ai 169 caracteres si je calcul depuis la racine de mon dossier principale.

en gros les dossiers se trouve ici :

Dropbox ANN juliloli/ANN juliloli/Installations/CHANTIER EN COURS/ECHAF 279 MV VALORISATION 86 avenue Pierre Brossolette 94170 Le perreux sur marne INSTALL LE 12 sept 17

Donc si mon dossier se nomme : ECHAF 279 MV VALORISATION 86 avenue Pierre Brossolette 94170 Le perreux sur marne INSTALL LE 12 sept 17 CA NE FONCTIONNE PAS

SI mon dossier se nomme : ECHAF 279 MV VALORISATION 86 avenue Pierre Brossolette 94170 Le perreux sur marne I CA FONCTIONNE.

Merci d'avance.

Re bonsoir,

Je viens de faire une manip pour ne plus que windows 10 me limite dans les nombres de caracteres des dossiers.

Je peux donc deplacer mes dossier sans probleme.

Par contre au niveau de ma macro ca bloque toujours à 76 max.

QUelqu'un à une idée?


Apparement c'est excel qui limite l'accès au nom de dossier trop long.

Si qu'lqu'un peu m'aider ca serait top.


https://support.microsoft.com/fr-fr/help/213983/error-message-when-you-open-or-save-a-file-in-microsoft-excel-filename

Rechercher des sujets similaires à "macro enregistre feuilles pdf xlsm"