Enregistrement sous - PDF et XLSX

Bonjour,
Je vous sollicite aujourd'hui pour un petit coup de pousse si c'est possible merci bien !!

Je dispose d'un premier classeur XLSM qui contient un certain nombre de feuilles. A partir de ce dernier je dois extraire 4 feuilles afin de :

1. créer un nouveau classeur type (XLSX) sans macros;

   Application.DisplayAlerts = False

'Déclaration des variables utilisés & affectations des valeurs

    Dim Equipe As String
    Dim Annee As String
    Dim Nom As String
   Dim Rsk as String

    Rsk = Sheets("PAR").Range("D1").Value

    Equipe = Worksheets("PAR").Range("D2").Value
    Annee = Year(Worksheets("PAR").Range("C4").Value)
    Name = "EQUIPE : " & Equipe & " ANNEE " & Annee & " ENVOYE LE " & Format(Date, "ddmmyyyy")

    Fname = Application.GetSaveAsFilename(Nom)

'Enregistrement du nouveau XSLX SANS FORMULES dans le fichier 

    If Rsk = "S" Then

    Sheets("SOLDE - S").Cells.ClearComments

    ActiveWorkbook.Sheets(Array("FEUILLE 1", "FEUILLE 2", "FEUILLE 3", "FEUILLE 4")).Select

   ThisWorkbook.Sheets(Array("FEUILLE 1", "FEUILLE 2", "FEUILLE 3", "FEUILLE 4")).Copy
        ActiveWorkbook.SaveAs Filename:=Fname, FileFormat:=xlWorkbookDefault, CreateBackup:=False

EndIf

2. Créer un document pdf de ces mêmes feuilles.

    If Rsk = "S" Then

    ActiveWorkbook.Sheets(Array("FEUILLE 1", "FEUILLE 2", "FEUILLE 3", "FEUILLE 4")).Select
     Nom = " EQUIPE : " & Equipe & " - ANNEE " & Annee & " ENVOYE LE " & Format(Date, "ddmmyyyy") & ".pdf"

Fname = Application.GetSaveAsFilename(Nom)

   'Enregistrer en PDF
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Fname, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    From:=1, To:=Sheets.Count, OpenAfterPublish:=True

Pour l'instant j'ai fait le choix de créer deux boutons séparés pour les deux macros

cependant j'ai 2 problèmes :

a- Je ne 'arrive pas à enregsitrer mes pdf et xlsx là où je veux avec le nom que j'ai attribué dans la variable "NOM"

b - Concernant le pdf je n'arrive pas à ajuster les feuilles car elles comprennent des tableaux.

même si j'ai utlisé une macro enregistré pour ajuster les FEUILLES 1, 2 et 3 sur 2 pages de hauteur / et la Feuille 4 sur une seule page en hauteur --> le pdf me crée des pages blanches vides ce qui est problématique. une solution pour les supprimer ?

          With ActiveSheet.PageSetup

        .FitToPagesWide = 1
        .FitToPagesTall = 2

    End With

RECAP :

1. soucis pour enregistrer le pdf et le xlsx là où je veux avec un nom prédéfinie dans la variable NOM

2. Soucis des pages blanches dans le pdf que je dois enlevé

MERCI POUR VOS AIDES

Bonjour CharifB

Vous mettriez l'option

Option Explicit

En entête de vos modules, vous verriez tout de suite le problème

Faites le et lancer une compilation du code

A+

Bonjour BrunoM45,

Merci pour ton conseil,

Option explicit

Sert à forcer la déclaration des variables.
Cela a bien été fait en amant, j'ai déclaré mes variables qui sont utilisés que dans le même module par une définition classique : Dim .... As .... , et les variables dont j'aurai besoin dans plus d'un module par : Global ... As .... .

Toujours dans la continuité de ma problématique : je n'ai toujours pas trouvé de solution à :

1. Dans la création du pdf : je me rend compte même si je n'ai pas un niveau développé (je peux me tromper), que c'est cette ligne

Fname = Application.GetSaveAsFilename(Nom)

Qui me crée un pdf ou qui m'ouvre l'onglet pour enregistrer mon pdf mais sans y mettre le nom comme je le demande dans les (NOM).

En plus de ça j'arrive toujours pas à dimensionner correctement mes feuilles en faisant

     With ActiveSheet.PageSetup

        .FitToPagesWide = 1
        .FitToPagesTall = 2

    End With
Rechercher des sujets similaires à "enregistrement pdf xlsx"