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 :

Impression Image Paysage


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 51
    Par défaut Impression Image Paysage
    Bonsoir le forum,

    J’ai un code d’impression d’une image contenue dans un userform, et lorsque je lance l’impression, configurant préalablement l’imprimante en mode paysage, ça sort systématiquement en portrait.

    L’impression que je cherche le plus étant le paysage, ce serait sympa si quelqu’un me filait son bout de code, à défaut d’avoir un code qui permettrait de choisir le mode d’impression portrait/paysage.

    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
    Dim Img As String
    Private Sub ImprimerImage_Click()
    Dim ImpDefaut As Variant, FTemp As Worksheet
    If Img = "" Then Exit Sub
    If Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show = True Then
    Application.DisplayAlerts = False
    ImpDefaut = ActivePrinter
    Set FTemp = Sheets.Add
    FTemp.Pictures.Insert Img
    FTemp.PrintOut
    FTemp.Delete
    Application.ActivePrinter = ImpDefaut
    End If
    Application.DisplayAlerts = True
    End Sub
    http://sd-1.archive-host.com/membres...ntaire_102.zip

    Cordialement, Kim.

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,
    tu peux essayer ce code, non vérifié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.Orientation = xlLandscape' pour paysage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.Orientation = xlPortrait 'pour portrait
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2008
    Messages : 226
    Par défaut
    Hello Kimaos, Casefayere,

    Modifies ton code comme ceci
    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
    Private Sub ImprimerImage_Click()
     
        Dim ImpDefaut As Variant, FTemp As Worksheet
     
        If Img = "" Then Exit Sub
     
        If Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show = True Then
     
        Application.DisplayAlerts = False
        ImpDefaut = ActivePrinter
     
        Set FTemp = Sheets.Add
     
        '*********************************************************************************************
        'With ActiveSheet.PageSetup ' Tu peux aussi jouer sur le zoom ici, mais attention pas plus de 115% sinon ça dépasse !
        '    .Zoom = 115
        'End With
        '*********************************************************************************************
     
            FTemp.PageSetup.Orientation = xlLandscape 'Ici pour le paysage.
            FTemp.Pictures.Insert Img
            FTemp.PageSetup.CenterHorizontally = True 'Ici pour centrer Horizontalement.
            FTemp.PageSetup.CenterVertically = True 'Ici pour centrer Verticalement.
            FTemp.PrintOut
            FTemp.Delete
            Application.ActivePrinter = ImpDefaut
        End If
     
        Application.DisplayAlerts = True
     
    End Sub
    Bonne nuit !

    Anton.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 51
    Par défaut
    Hello Casfayere, Antoniom, le forum,

    Merci pour le code, ça fonctionne bien,
    Je vous souhaite une excellente journée,

    Amicalement, Kim.

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

Discussions similaires

  1. Impression image [AWT][debutant]
    Par LudwigVon88 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 18/08/2006, 00h33
  2. impression image ds état
    Par nogood1 dans le forum IHM
    Réponses: 2
    Dernier message: 10/07/2006, 14h53
  3. impression en paysage avec un css
    Par amarcil dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 15/04/2006, 17h54
  4. Impression en paysage plutot qu'en portrait
    Par diegoDaz dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/08/2005, 15h01

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