impression image d'un userform

nuts026

XLDnaute Nouveau
bonjour à tous
c mon bapteme aujourd'hui : ma premiere question !

je suis very débutant mais je prend des bouts de programme de partout pour m'en sortir... mais...

j'ai créé une base avec userforms, chacun avec plusieur button qui montrent ou cachent des images dans cet userform.
je souhaite imprimer l'image qui est affichée dans mon userform..

merci de vos réponses
 

nuts026

XLDnaute Nouveau
Re : impression image d'un userform

bonjour cbea,
et merci de te pencher sur mon probleme

en fait, le fichier que j'ai posté est un exemple, le vrai contient des plans de batiment et fait 50Mo..

ce que je voudrais c'est pouvoir imprimer les planssur un format A4 sans que l'on est l'userform derriere.. uniquement le plan (ou la photo dans le fichier exemple)

l'autre petit soucis que je rencontre, c'est qu'il y a des plan en format A4 vertical et d'autre en format horizontal.(à régler plus tard)

merci encore
si tu as d'autre solution à proposer je suis suspendu à tes lèvres.
 

cbea

XLDnaute Impliqué
Re : impression image d'un userform

Bonjour nuts026,

Voici une autre solution.
L'image à imprimer est affichée dans un objet Image dans la feuille Feuil2 avant d'être imprimer.
En fonction de la hauteur et de la largeur de l'image, l'impression est mise en mode portrait ou paysage.

Le code VBA est commenté.
 

Pièces jointes

  • base_v2.zip
    22 KB · Affichages: 171

nuts026

XLDnaute Nouveau
Re : impression image d'un userform

MERCI BEAUCOUPPPPP CBEA !!!
ca marche impecablement comme je le voulais.

puisque je te tiens, je voulais pouvoir créer un zoom + et zoom - avec la possibilité de se déplacer dans l'image pour pouvoir voir un détail par exemple (comme les plans sont grand).

C'est possible?
j'ai déjà intégré le zoom mais je n'arrive pas à me déplacer dans l'image (en fait on zoom en haut à gauche de l'écran)

merci d'avance et encore..
 

nuts026

XLDnaute Nouveau
Re : impression image d'un userform

re bonjour CBEA

j'ai un soucis d'adaptation à mon fichier de plan, je peux avoir jusqu'à 9 images par userbox (et 19 userbox) et en adaptant ton code j'ai un message d'erreur:



If Image1.Visible = False And Image2.Visible = False And Image3.Visible = False And Image4.Visible = False And Image5.Visible = False And Image6.Visible = False Then Exit Sub

Application.ScreenUpdating = False

With Worksheets("feuil2")
' Afficher l'image visible dans l'image de la feuille Feuil2
If Image1.Visible = True Then
.Image1.Picture = Image1.Picture
ElseIf Image2.Visible = True Then
.Image1.Picture = Image2.Picture <---- erreur
ElseIf Image3.Visible = True Then
.Image1.Picture = Image3.Picture
ElseIf Image4.Visible = True Then
.Image1.Picture = Image4.Picture
ElseIf Image5.Visible = True Then
.Image1.Picture = Image5.Picture
ElseIf Image6.Visible = True Then
.Image1.Picture = Image6.Picture
End If

' Rendre visible l'image
.Image1.Visible = True
.....


je n'arrive pas à voir ce qui va pas..
merci

@+
je vais devoir me déconnecter dans 20 min et reprendre lundi
 

cbea

XLDnaute Impliqué
Re : impression image d'un userform

Bonsoir nuts026,

Peux-tu vérifier que tu as bien mis une image nommée Image1 dans la feuille Feuil2 ?
Si ce n'est pas cela, il serait préférable de fournir le fichier.

Merci
 

cbea

XLDnaute Impliqué
Re : impression image d'un userform

Bonjour nuts026,

Peux-tu essayer en rajoutant les lignes de code ci-dessous ?

Code:
        .PageSetup.CenterHorizontally = True
        .PageSetup.CenterVertically = True
        .PageSetup.Orientation = xlPortrait
[COLOR="Blue"]        .PageSetup.Zoom = False
        .PageSetup.FitToPagesWide = 1
        .PageSetup.FitToPagesTall = 1[/COLOR]
        If .Image1.Width > .Image1.Height Then
            .PageSetup.Orientation = xlLandscape
        End If
 

nuts026

XLDnaute Nouveau
Re : impression image d'un userform

re
j'ai un beug



' Postionnement de la feuille en mode paysage ou portrait
' en fonction de la hauteur/largeur de l'image
.PageSetup.CenterHorizontally = True
.PageSetup.CenterVertically = True
.PageSetup.Orientation = xlPortrait
PageSetup.Zoom = False <===== beug
.PageSetup.FitToPagesWide = 1
.PageSetup.FitToPagesTall = 1
If .Image1.Width > .Image1.Height Then
.PageSetup.Orientation = xlLandscape
End If


et si je supprime la ligne ca m'inprime sur 4 pages


Comment je pourrais t'envoyé mon fichier (en un peu moin lourds)?
ca serai plus simple:confused:


merci a+
nuts026
 

nuts026

XLDnaute Nouveau
Re : impression image d'un userform

quand je fais un zoom qui depasse de l'écran j'ai la moitié du plan qui s'affiche en zoomé et je peux pas voir l'autre partie.comment pourait on faire pour pouvoir déplacer l'userform en cliqué-glissé n'importe où dans l'userform (comme si on cliqué dans la barre bleu en haut de la fenetre)?


merci
nuts026
 

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed