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 :

Format fichier PDF en fonction résolution windows [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2017
    Messages : 3
    Par défaut Format fichier PDF en fonction résolution windows
    Bonjour le forum,

    Ceci est mon premier poste et je souhaite remercie le forum pour ses aides très précieuses.

    J'utilise la fonction d'excel 2013 convertir en PDF :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\etc"
    Jusqu'ici tout va bien. Mais ma macro est aussi utilisée par mes collègues et c'est là qu'arrive mon problème.

    En effet le format du fichier PDF obtenu (affichage, mise en page du tableau xls) varie en fonction des paramètres d'affichage Windows 7 des différents PC (résolution d'écran 1920x1080 ou 1600x900, grossissement du texte 100% ou 125%).

    Existe-il une solution autre que d'imposer à mes collègues les paramètres d'affichage ?

    Merci et bonne journée,

    Nebelicht

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 438
    Par défaut
    Non testé: ajouter le paramètre IgnorePrintAreas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\etc", IgnorePrintAreas:=False
    Si cela ne fonctionne pas, une autre façon de procéder serait envoyer l'impression sur une imprimante virtuelle pdf.
    Cordialement.

  3. #3
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2017
    Messages : 3
    Par défaut
    Bonjour EricDgn,

    Merci pour votre retour. Je vais tester ça, je vous tiens au courant.

  4. #4
    Candidat au Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2017
    Messages : 3
    Par défaut
    Bonjour le forum,

    Après plusieurs tentative le rendu n'était toujours pas bon. J'ai donc opté pour une mise en forme du classeur en fonction des utilisateurs (code trouvé sur le forum)

    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
     
    Dim Ws As Worksheet
    Dim LeUser As String
     
    LeUser = UCase(Environ("username")) 'Récupère le nom d'utilisateur en majuscule
     
    'Pour les PCs configuré avec affichage à 125%
    If LeUser = "USER1" Or LeUser = "USER2" Or LeUser = "USER3" Then  'Teste le nom d'utilisateur
        For Each Ws In ActiveWorkbook.Sheets 'Boucle sur toutes les feuilles du fichier
            With Ws.PageSetup
                .LeftMargin = Application.InchesToPoints(0.1)
                .RightMargin = Application.InchesToPoints(0.1)
                .Zoom = 98
            End With
            ActiveSheet.Select
            Cells.Select
            Selection.RowHeight = 12.8
        Next Ws
     
    Else 'Pour les PCs configuré avec affichage à 100%
        For Each Ws In ActiveWorkbook.Sheets 'Boucle sur toutes les feuilles du fichier
            With Ws.PageSetup
                .LeftMargin = Application.InchesToPoints(0.2)
                .RightMargin = Application.InchesToPoints(0.2)
                .Zoom = 100
            End With
            Ws.Activate
            Cells.Select
            Selection.RowHeight = 12
        Next Ws
    End If
    En tout cas merci EricDgn pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème options régionales (format fichiers pdf et excel générés)
    Par info__net dans le forum Glassfish et Payara
    Réponses: 1
    Dernier message: 24/07/2013, 13h17
  2. Réponses: 5
    Dernier message: 29/03/2011, 15h35
  3. Réponses: 0
    Dernier message: 17/05/2010, 16h17
  4. Fichier PDF en format Excel
    Par NEC14 dans le forum Excel
    Réponses: 1
    Dernier message: 28/10/2009, 20h33
  5. Insérer fichier pdf dans LaTeX sous Windows
    Par kawel dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 1
    Dernier message: 07/09/2006, 16h33

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