Bonjour,
J’avais vu quelque part qu’on pouvait accéder à toutes les propriétés (nom et valeur) d’un objet sous vba
Le problème c’est que je n’ai pas retrouvé le morceau de code qui permettrait d’avoir ça.
Ex de ce que je veux pour une feuille excel dans un Debug.print
Name
DisplayPageBreak
DisplayRightToLeft
…
Je pense que c’est une boucle de type For Each mais je ne sais pas comment faire.
Quelqu’un peut il m’aider?
nan, t’es sûr que ça existe?
ça ressemble à de l’introspection en Java: connaître le nom des attributs par prog, et interpréter ensuite l’appel à ces attributs.
Vu que c’est plus ou moins interprété, c’est bizarre qu’il n’y ait pas une fonction pour exécuter une String comme du code.
bref j’ai plusieurs pistes: l’objet “codeModule” qui te permet de travailler sur un module classique, une classe ou le code d’une worksheet. ça te permettrait de connaître le nom des attributs ou méthodes. mais pour l’exécution…
je me suis servi de cette classe pour faire un export bestial des sources de mon projet.
pour l’exécution, j’ai vu des framework de test unitaires: cerains utilisent peut-être l’introspection, mais je peux me gourrer. Je peux essayer de chercher un peu plus, mais apparemment, d’autres se sont posés la questions, mais je n’ai pas trouvé de réponse.
le framework en question: http://sourceforge.net/project/showfiles.p…ckage_id=126635
mais bon, je n’ai pas vu grand chose d’intéressant dans les sources.
m’enfin, si tu connaît le type des objets que tu parcoure, tu pourrait utiliser une autre solution, en testant “is qqch” et en routant sur une fonction par type d’objet.
edit: d’après le Thread en anglais, la classe codeModule serait là dedans:
“Microsoft Visual Basic for Applications Extensibility 5.3”