Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Lister des éléments avec leurs paramètres de définition...

vgendron

XLDnaute Barbatruc
Bonjour à toutes et tous!

Plus que du code, je suis à la recherche d'idées ou d'algo.

voici mon problème:

Sur une feuille excel, j'ai des lignes d'instruction pour un script de test
une ligne étant constituée de la sorte:
VB:
NomVariable1 = NomFonction1(ArgumentsFonction1)
NomVariable2= NomFonction1(ArgumentsFonction1)
NomVariable3 = NomFonction2(ArgumentsFonction2)
...
...
NomVariable_4=NomVariable_1 + NomVariable_2
...
...

l'objectif est de generer un fichier texte permettant de lister toutes les variables
et de donner les éléments de calculs de ces variables

ca donnerait ceci
VB:
[Variables]
NbVar=4
NomVar_1=NomVariable1
...
NomVar4=NomVariable4

[NomVariable1]
TypeVar=NomFonction1
Param1 = xxx
Param2 = xxx

[NomVariable2] 'meme fonction utilisée que pour la variable 1 ==> donc, meme type de paramètres
TypeVar=NomFonction1
Param1 = xxx
Param2 = xxx

[NomVariable3] 'il s'agit d'une autre fonction, les paramètres peuvent donc etre différents et en nombre différent.
typeVar=NomFonction2
Param1=yyy
Param2=yyy
Param3=yyy


l'idée, c'est donc lister Toutes les variables et d'identifier les paramètres de la fonction associée..
pour l'instant, je suis parti avec un dictionnaire "Dico_ListeVar" ayant pour clés le nom de la variable, et pour valeurs la chaine complète de l'instruction (NomFonction(ArgumentsFonction)

j'ai aussi un tableau Dim TabVariables() as TYPEVARIABLE
le TYPEVARIABLE étant un type perso
type TYPEVARIABLE
NomVar as string
NomFonction as string
Param1 as string
Param2 as string
end type

vous voyez donc apparaitre la difficulté..
selon la fonction utilisée, le TypeVariable ne contient plus les memes éléments..

Je me disais.. soit je défini un TYPEVARIABLE regrouppant tous les paramètres possibles et imaginables, et je ne rempli que ceux utiles.. soit je défini un Type pour chaque fonction...
mais la.. du coup..je ne sais pas si mon tableau "TabVariables" peut accepter des éléments de types différents..
en le définissant en Dim TabVariables() as variant?? ca passerait?

si quelqu'un a une idée.. je prend :-D
en tout cas merci et bon appétit !
 

vgendron

XLDnaute Barbatruc
Hello Tous
déjà un grand merci pour toutes vos contributions

VB:
Oui, tableaux, Collection, Dictionary tout ça, à la seule condition que ce ne soient pas des types définis par blocs Type … End Type, avec lesquels rien d'autre n'est possible qu'un tableau d'éléments d'un seul tel type

avec cette petite ligne d'explication de texte de Dranreb, "La seule solution" étant celle que je ne remplis justement pas.. :-D je vois qu'il faut clairement que je commence à me familiariser avec les modules de classe et la prog objet... :-D
 

vgendron

XLDnaute Barbatruc
Bonjour job75,
désolé.
je suis allé un peu vite sur ta proposition vu que le fichier résultat.txt ressortait vide..

de ce que je vois. ca semble effectivement faire le boulot en partie
mais le point de départ ne correspond pas à ma situation..
de ce que je vois, la macro résultat "analyse" le contenu du module vba..
moi.. ce contenu, ce sont des lignes de texte dans une feuille Excel.... ce n'est pas du code vba.


Cela dit.. ca me donne quand meme des idées sur la facon ensuite de traiter mes fonctions..
donc,tu as droit aussi à un merci :-D
 

job75

XLDnaute Barbatruc
En même temps.. suis en train de voir que analyser du texte placé dans un module, ou du texte placé dans une feuille excel.. c'est sensiblement la meme chose......
Oui bien sûr, mais placé dans un module VBA c'est quand même plus logique puisqu'on parle de variables...

PS : très curieux que tu aies pu obtenir un fichier Resultat.txt vide ???
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…