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 :

Imprimer shape Image en format et dimension A4


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    postier
    Inscrit en
    Octobre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : postier
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Imprimer shape Image en format et dimension A4
    Bonjour,
    J'ai inséré une Image JPG sur Excel et je souhaiterais via VBA l'imprimer en format et dimension A4 mais malheureusement je ne sais pas comment faire car la fonction printout ne fonctionne pas sur cette macro et lorsque j'y arrive avec d'autres macros l'image n'est pas bien redimensionnée en Format A4.
    Voici ce que j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim Img As Object
     Sheets("feuil1").Select
      For Each Img In Worksheets("feuil1").Shapes
      Img.Select
      Next
    selection.printout

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, te renseigner sur CentimetersToPoints
    puis via qqch comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    .....
    Coeff = 29.7 / 21
    W = Application.CentimetersToPoints(29.7)
    H = W * Coeff
     
    With ActiveSheet.Shapes(Tablo(i))
        .Left = L
        .Top = T
        .Width = W
        .Height = H
    End With
     
    .....
    où Tablo est rempli via ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Erase Tablo
    For Each oOle In Worksheets(ActiveSheet.Name).OLEObjects
        sNomOle = ActiveSheet.Shapes(oOle.Name).Name
        ReDim Preserve Tablo(i)
        Tablo(i) = sNomOle
        i = i + 1
    Next oOle
    Un A4 imprimé à 300 dpi fait au départ 2480 x 3508 pixels

  3. #3
    Futur Membre du Club
    Homme Profil pro
    postier
    Inscrit en
    Octobre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : postier
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Merci
    Merci beaucoup !
    Excellente journée a vous tous !

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sub test()
    ImprimeGrandFormat sheest(X),Shapes(Y)
    end sub
    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
    Sub ImprimeGrandFormat(Wsh As Worksheet, Shp As Shape)
        Dim w
        With Wsh
            With .PageSetup
                .TopMargin = 0
                .LeftMargin = 0
                .RightMargin = 0
                .BottomMargin = 0
                .FooterMargin = 0
                .HeaderMargin = 0
                .CenterHorizontally = True
                .CenterVertically = True
                .Orientation = IIf(Shp.Width > Shp.Height, 2, 1)
            End With
            With Shp
                 t=.top :l=.left: w = .Width
                If .Width < .Height Then
                    .Height = Application.CentimetersToPoints(29.7)
                Else
                    .Width = Application.CentimetersToPoints(21)
                End If
                .Top = 0
                .Left = 0
            End With
            With .PageSetup
                If Shp.Width < Shp.Height Then
                    .FitToPagesTall = 1
                    '.FitToPagesWide = 1
                Else
                    '.FitToPagesTall = 1
                    .FitToPagesWide = 1
                End If
            End With
        End With
        Wsh.PrintPreview
        Shp.Width = w:shp.left=l:shp.top=t
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

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

Discussions similaires

  1. Ecrire une image au format CGM
    Par Blowih dans le forum C++
    Réponses: 3
    Dernier message: 17/02/2011, 11h31
  2. Affichage et dimensions d'images au format dds
    Par toblerona dans le forum Composants VCL
    Réponses: 2
    Dernier message: 26/02/2010, 18h28
  3. Utilisation d'images au format png
    Par chtiot dans le forum Langage
    Réponses: 2
    Dernier message: 24/10/2003, 15h56
  4. Des fonctions OGL pour les images de format usuel ?
    Par jamal24 dans le forum OpenGL
    Réponses: 3
    Dernier message: 31/05/2003, 21h59
  5. lire une image au format RAW
    Par Anonymous dans le forum OpenGL
    Réponses: 5
    Dernier message: 20/05/2002, 00h11

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