IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro Export pdf avec nom, emplacement et dossier spécifié


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Homme Profil pro
    Gérant de pme
    Inscrit en
    Mai 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Gérant de pme
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 21
    Par défaut Macro Export pdf avec nom, emplacement et dossier spécifié
    Bonjour à tous,

    Je vous expose mon problème et mon code actuel:

    J'ai un classeur exell dont j'ai besoins d'exporter un onglet dans un dossier au nom du client (a creer si il n'existe pas encore) et le nom du fichier est spécifier.

    Pour spécifier le nom du fichier pas de problème, ca marche et j'ai prévu un inputbox pour vérifier si jamais je veux changer le nom.

    Mais, au niveau du répertoire ca coince et pour je ne sais quelle raison l'enregistrement pdf ne se fait pas (alors que ce code je l'utilise déjà pour d'autre fonction et ca fonctionne nikel)

    Ici j'ai une erreur 424 au niveau du code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
        .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, From:=1, To:=2, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

    Voici mon code complet pour cette fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    Sub Enregistre_xls()
    '
    ' Enregistre_xls Macro
    ' Copie les onglets vers un nouveau classeur et lance la boîte de dialogue enregister pdf
    '
     
    Application.EnableEvents = False
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
     
    'ne lance la macro que s'il y a plus de 7 feuilles
     
    If ThisWorkbook.Sheets.Count > 7 Then
     
        ' Proposer un nom de fichier REC ou CP _ annéemoisjour _ nom professionnel
     
        année = Year(Now())
        mois = Month(Now())
        If mois < 10 Then mois = "0" & Month(Now())
        jour = Day(Now())
        If jour < 10 Then jour = "0" & Day(Now())
        professionnel = Sheets("Attest").Range("B7").Text
        nomclient = Sheets("Attest").Range("D7").Text
        If (Sheets("Attest").Range("A1").Text = "ATTESTATION DE RECEPTION PEB D'UN SYSTEME DE CHAUFFAGE") Or (Sheets("Attest").Range("A1").Text = "Attest van EPB-periodieke controle van een verwarmingsketel of een waterverwarmingstoestel") Then
            sorte = "REC_"
        Else
            sorte = "CP_"
        End If
     
        nom_proposé = nomclient & " - " & sorte & jour & " " & mois & " " & année & "_" & professionnel
     
        Nom_fichier = InputBox("Choisir le nom du fichier ?" & Chr(13) & "Bestandsnaam Ingeven ?", "", nom_proposé)
        If Nom_fichier = "" Then Exit Sub
     
        'Feuilles à sélectionner
     
        Call montre_feuilles
     
        Sheets("Attest").Select
     
        For i = 1 To ThisWorkbook.Sheets.Count
            nom = Sheets(i).Name
            If (nom <> "Menu") And (nom <> "Attest_fr_long") And (nom <> "Mesures < 1 MW (0)") And (nom <> "Mesures >= 1 MW (0)") And (nom <> "Attest_nl_long") And (nom <> "Metingen < 1 MW (0)") And (nom <> "Metingen >= 1 MW (0)") Then Sheets(i).Select Replace:=False
        Next i
     
        Call cache_feuilles
     
        ActiveWindow.SelectedSheets.Copy
     
        'Save as PDF
        Dim fichier As String
        'Dim nom As String
        'adaptez le nom de la feuille
        With ActiveSheets
        'nom = ActiveSheets.Range("D7").Text
        fichier = "Nom_fichier.pdf"
        'pensez a ecrire le chemin
        rep = "Z:\Cascade\Gestion\Gestion\data\ &nomclient"
        chemin = rep & "\" & Nom_fichier
     
        'ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _chemin, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
     
        .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, From:=1, To:=2, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
        End With
     
        'Application.Dialogs(xlDialogSaveAs).Show "C:\" & Nom_fichier
     
       'ActiveWorkbook.Close
     
        Call cache_feuilles
     
        Sheets("Menu").Select
     
    End If
     
    Application.EnableEvents = True
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
     
    End Sub
    Merci pour le coup de main !

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par captfreud Voir le message
    Ici j'ai une erreur 424 au niveau du code:
    Quel est le message d'erreur ?

  3. #3
    Inactif  
    Homme Profil pro
    Gérant de pme
    Inscrit en
    Mai 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Gérant de pme
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 21
    Par défaut
    Erreur d'exécution '424':
    Objet requis
    et en ligne à ce niveau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
       .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, From:=1, To:=2, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
    Merci

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    With ActiveSheets : le "s" final est en trop.

  5. #5
    Inactif  
    Homme Profil pro
    Gérant de pme
    Inscrit en
    Mai 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Gérant de pme
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 21
    Par défaut
    OK ca avance, merci l'ami !

    Mais autre problème se pose du coup:

    Erreur d'exécution'1004': document non enregistré
    avec toujours le meme endroit du code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, From:=1, To:=2, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Discussions similaires

  1. [XL-2007] Macro enregistrement fichier excel en pdf avec nom variable
    Par catetesse dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 23/01/2018, 14h03
  2. Réponses: 3
    Dernier message: 19/11/2015, 15h31
  3. [XL-2003] Macro pour imprimer en pdf avec nom de fichiers variables
    Par YoTaPi dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/07/2014, 18h50
  4. Macro enregistrement fichier excel en pdf avec nom variable
    Par splog dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 16/08/2013, 16h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo