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 :

Exporter l'affichage de l'intérieur d'un UserForm


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Par défaut Exporter l'affichage de l'intérieur d'un UserForm
    Bonjour,

    Je voudrais exporter en .gif le contenu d'une fenêtre UserForm.

    Existe t'il un code comme pour les graphiques ( ActiveChart.Export Filename:=nom_image, FilterName:="GIF" ) ?

    Dans ma UserForm, il y a une image et des textbox.

    Je vous remercie d'avance pour vos réponses.

  2. #2
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    pour ton .gif, il suffit d'un Snapshot en fait, regardes de fil, c'est ce qui est utilisé


    Imprimer toutes les pages d'un USF Multipages

    cordialement,

    Didier

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    Bonjour,

    En complément de la réponse de Didier que je salue ... ;o) ...

    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
    38
    39
    40
    41
    Option Explicit
     
    Private Declare Sub keybd_event Lib "user32" ( _
            ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
            ByVal dwExtraInfo As Long)
     
     
    Private Sub CommandButton1_Click()
        Dim Ws As Worksheet
        Dim Pict As Picture
     
        'Copie d'écran de la forme active
        keybd_event vbKeySnapshot, 1, 0&, 0&
        DoEvents
     
        Application.ScreenUpdating = False
        'Ajoute une feuille temporaire pour coller l'image de la forme
        Set Ws = Sheets.Add
        Ws.Paste
     
        'Définit la premiere image dans la feuille
        Set Pict = Ws.Pictures(1)
        Pict.CopyPicture 'copie l'image
     
        With Ws.ChartObjects.Add(0, 0, Pict.Width, Pict.Height).Chart
            .Paste 'colle l'image dans un graphique temporaire
            'Sauvegarde au format image, dans le même répertoire que ce classeur.
            .Export "C:\" & Pict.Name & ".gif", "GIF"
        End With
     
        'Supprime le graphique temporaire
        Ws.ChartObjects(1).Delete
     
        'Supprime la feuille temporaire
        Application.DisplayAlerts = False
        Ws.Delete
        Application.DisplayAlerts = True
     
        Application.ScreenUpdating = True
     
    End Sub
    bonne journée
    michel

  4. #4
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Par défaut
    Merci pour vos réponses très utiles (notamment celle de SilkyRoad). Cela fonctionne comme voulu.

    Cependant, la qualité de l'image copiée n'est vraiment pas belle ...
    Savez-vous comment améliorer cela ? (j'ai fais la même chose avec un graphique "ActiveChart.Export Filename:=nom_image, FilterName:="GIF"" ) et le rendu était impeccable !).

    Merci d'avance !

Discussions similaires

  1. Affichage date du jour dans un userform
    Par Toison dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 26/03/2019, 12h23
  2. Affichage d'un Graphique dans un UserForm
    Par eric4459 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/09/2014, 16h28
  3. pb d'affichage de l'heure lors d'un export excel
    Par fsautejeau dans le forum Access
    Réponses: 10
    Dernier message: 30/08/2006, 10h17
  4. affichage export d'un état sous excel
    Par kbh dans le forum Access
    Réponses: 3
    Dernier message: 08/03/2006, 13h32

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