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 :

[VBA-E] impression propiétés userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut [VBA-E] impression propiétés userform
    Bonjours,

    j'aimerais imprimer ce que j'ai fais en VBA mais:

    je n'arrive pas à imprimer les propriétés d'un userform

    merci d'avance

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Il y a "longtemps" j'ai vu passer le code permettant de récupérer quelque chose comme ça. Enfin, je crois ... Je cherche et si je trouve, je te le mets.
    A+

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Bon... C'est pas bon... En fait c'était pour lister les propriétés... du fichier, pas d'un objet.
    Je crois que tu vas devoir te palucher ça à la main (je ne connais pas de méthode pour les passer en revue, ce qui ne veut pas dire qu'il n'y en ait pas)
    LaPropriété(1) = Usertform.Height
    LaPropriété(2) = Usertform.Font
    tsétérats...
    Si tu fais ça, peut-être serait-il bien que tu mettes ça sur le forum...
    Bonne chance

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut
    ok je m'y mets la semaine prochaine et si je trouve je mets sur forum
    merci

  5. #5
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Tu exportes ton Form et tu ouvres le fichier .frm généré avec un éditeur de texte.

    Non testé.
    Je ne sais pas si toutes les propriétés y sont.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  6. #6
    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
    bonsoir

    tu peux tester


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim i As Integer
    Dim VBcomp As Object
     
    On Error Resume Next
    Set VBcomp = ThisWorkbook.VBProject.VBComponents("UserForm1")
     
    For i = 2 To VBcomp.Properties.Count
        Debug.Print VBcomp.Properties(i).Name & ": " & _
                VBcomp.Properties(i).Value
    Next i

    et tu peux aussi utiliser la librairie TLBINF32.dll pour recuperer les proprietes des controles



    michel

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut
    Salut
    J'espère que tout le monde a passé un bon week-end, merci pour les réponses.

    Alain, j'ai exporté sous frm mais seule la propriété caption est imprimée et 2 ou 3 autres qui ne correspondent pas à ma fenêtre propriété.


    Silkyroad, j'ai testé ton code mais il y a erreur 1004: methode VBproject de objet workbook a échoué.

    J'ai essayé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each userform In ThisWorkbook
    ou d'après ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each vbcomponents In ThisWorkbook
    mais rien ne marche.

    Je n'arrive pas à dire en code: pour chaque userform de mon project je veux.

    Silkyroad, je ne trouve pas la librairie TLBINF32.dll.
    merci

  8. #8
    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

    je doute que tu ais réellement testé la procedure proposée, surtout pour obtenir un message d'erreur 1004 alors que la macro commence par On Error Resume Next ...

    voici un exemple qui boucle sur tous les UserForm d'un classeur nommé "leClasseur" pour en récupérer les propriétés


    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
        'Nécéssite d'activer la référence
        '"Visual basic For Application Extensibility 5.3"
        '
        Dim Wb As Workbook
        Dim VBComp As VBComponent
        Dim i As Integer
     
        Set Wb = Workbooks("leClasseur.xls")
        On Error Resume Next
     
        'Recherche les UserForm du classeur
        For Each VBComp In Wb.VBProject.VBComponents
            If VBComp.Type = 3 Then
     
                Debug.Print VBComp.Name
                'Recupere les propriétés du UserForm
                For i = 2 To VBComp.Properties.Count
                    Debug.Print VBComp.Properties(i).Name & ": " & _
                                VBComp.Properties(i).Value
                Next i
     
                Debug.Print "---"
            End If
        Next VBComp

    fait une recherche sur le site Microsoft pour vérifier si TLBINF32.DLL est librement téléchargeable.


    michel

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut
    je vais tester ton code et regarder sur internet.

    J'avais mis une apostrophe devant On Error Resume Next car rien ne se passait, c'est pour ça que j'ai vu erreur 1004.
    a toute à l'heure
    claire

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Par défaut
    J'ai activé "Visual basic For Application Extensibility 5.3"
    mais j'ai encore une erreure 1004 sur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     For Each VBComp In Wb.VBProject.VBComponents
    et si j'active toutes les références?

    J'ai réussi à télécharger TLBINF32.exe et j'essaie de comprendre.

    désolée pour ces questions mais mes connaissances dans ce domaine (références, librairie...)sont nulles

    claire

Discussions similaires

  1. [VBA-E]Impression de feuilles selectionnées dans un "userform"
    Par gregoim dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/03/2007, 16h31
  2. [VBA-E]Impression feuille calcul sans userform
    Par pombela dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/03/2007, 19h09
  3. [Excel VBA] Boucler sur un userform
    Par tpv72 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/09/2005, 01h57
  4. [VBA-E] Impression page paire sur plusieurs onglets
    Par liop49 dans le forum Macros et VBA Excel
    Réponses: 23
    Dernier message: 17/02/2005, 15h19
  5. [VBA EXCEL] Réduire/Agrandir UserForms
    Par Fench dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/11/2003, 16h02

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