[VB]probleme Visual Basic avec ordre "evaluate"

probleme Visual Basic avec ordre "evaluate" [VB] - Programmation

Marsh Posté le 29-03-2002 à 13:42:21    

J ai des pb avec Evaluate. Je veux résoudre un nom de checkbox, avec une valeur venant d une dimension d un array.  
 
L exemple ci-apres aidera a la compréhension ...  
 
Pourriez vous m aider ?  
 
Merci d avance.  
 
Exemple :  
 
Check01.value = 0  
Check02.value = 0  
Check03.Value = 0  
Check04.Value = 0  
Check05.Value = 0  
Check06.Value = 0  
Check07.Value = 0  
Check08.Value = 0  
Check09.Value = 0  
Check10.Value = 0  
Check11.Value = 0  
Check12.Value = 0  
Check13.Value = 0  
Check14.Value = 0  
dim myarray(0 , 0 to 11) as integer  
myarray(0,0)="01"  
myarray(0,1)="02"  
myarray(0,2)="11"  
 
for valeur = lbound(myarray) to ubound(myarray)  
checkEvaluate(myarray(0,valeur)).Value = 1  
next valeur  
 
 
 
merci d'avance

 

[jfdsdjhfuetppo]--Message édité par talisker--[/jfdsdjhfuetppo]


---------------
-= Que Dieu bénisse St Patrick, Le moine évangélisateur le plus célébre d'Irlande et d'Ecosse. Ceci grace à ca fabuleuse et merveilleuse découverte qu'est l'Uisge Beatha =-Feedback http://forum.hardware.fr/forum2.ph [...] &post=8848
Reply

Marsh Posté le 29-03-2002 à 13:42:21   

Reply

Marsh Posté le 29-03-2002 à 14:08:19    

Ca sort d ou ton checkEvaluate ?   :heink:  :ouch:  :eek2:  
 
C est une methode d un objet ?
Si oui quel objet ?
Et c est suppose faire quoi au juste ?
 
Parce que la, je vois pas du tout ce que ca peut etre donc pour l employer ... ?

Reply

Marsh Posté le 29-03-2002 à 14:10:50    

Je suis pas très au courant des subtilités de VB_Applications pr Office, mais lbound(), ubound() pour un tableau à deux dims, ça marche ??
 
Les Check_0x et Check_1y, ça pourrait pas être un tableau de Check[] ? Ca faciliterait la vie (indexable, c'est comme ça qu'on fait en VBasic de programmation autonome).
 
Pas sûr d'avoir bien visé :).

Reply

Marsh Posté le 29-03-2002 à 14:27:38    

Bloodymary
 
exemple evaluate
 
dim propsvalue as string
propsvalue = "enable"
check01.evaluate(propsvalue) = True
 
 
CheckEvaluate(xxxxxxxxxxx) n est pas une fonction ....
 
Check <- premiere partie du nom case a cocher
Evaluate(xxxxxxxxxxx) <- complement du nom
 
Le tout devant donne le nom complet de la checkbox ....
 
 
Pour ce qui est du array celui-ci est a 2 dimensions (dim 1 numero de ligne d un fichier, dim 2 valeurs de cette meme lignes)
 
Carbon_14 :
 
Connait pas : "Les Check_0x et Check_1y, ça pourrait pas être un tableau de Check[] ? Ca faciliterait la vie (indexable, c'est comme ça qu'on fait en VBasic de programmation autonome). "
 
Pourrais tu developper ? STP .
 
Merci a vous deux des reponses


---------------
-= Que Dieu bénisse St Patrick, Le moine évangélisateur le plus célébre d'Irlande et d'Ecosse. Ceci grace à ca fabuleuse et merveilleuse découverte qu'est l'Uisge Beatha =-Feedback http://forum.hardware.fr/forum2.ph [...] &post=8848
Reply

Marsh Posté le 29-03-2002 à 14:46:37    

Pour faire  
Check01.Value = 0  
 
Check20.Value = 0
 
si on a un "tableau" de Check (si c'est possible ici, ça se fait en VB3 en donnant le même nom à l'objet qu'on crée => "Array" ), il suffit de faire
 
for i% = 1 to 14
  Check[i%].Value = 0  
next i%
 
Et quand on veut changer qq chose pour le j%-ième check
Check[j%].Value = 1 (ou autre, ou autre propriété de Check[]).

Reply

Marsh Posté le 29-03-2002 à 14:51:00    

dim propsvalue as string  
propsvalue = "enable"  
check01.evaluate(propsvalue) = True  
 
Ben en VB, le "evaluate", je vois pas  
 
Je suppose donc que tu parles du VBA ...
 
je peux pas t aider desole
Bon courage

Reply

Marsh Posté le 29-03-2002 à 15:23:11    

Ca serait pas une combinaison de Check l'objet CheckBox et Evaluate pour créer une chaîne/résultat concaténé pour créer un nom "absolu" ?
Genre Check01 créé par Check_évalue(01) qui serait censé coller la chaîne "Check" à la chaîne "01" ?
 
Avec un tableau de Check[], si j'ai compris, ça donnerait
Check[myarray(0,valeur)].Value = 1

Reply

Marsh Posté le 29-03-2002 à 15:50:02    

Je viens de regarder dans l'aide VBA de EXCEL.
Evaluate, méthode
                 
 
Convertit un nom Microsoft Excel en un objet ou une valeur.
 
Syntaxe
 
expression.Evaluate(Name)
 
expression   Facultative pour l'objet Application, obligatoire pour les objets Chart, DialogSheet et Worksheet. Expression qui renvoie un objet de la liste « S'applique à ».
 
Name   Argument de type String obligatoire. Nom de l'objet, conformément aux conventions de dénomination de Microsoft Excel.
 
Il semblerait qu'evaluate pour s'appliquer doive être écrit Machin.evaluate (le point est OBLIGATOIRE !!!). A part ça, ai pas le temps de voir à quoi ça sert :( ..

Reply

Marsh Posté le 29-03-2002 à 18:19:39    

CARBON_14 a écrit a écrit :

Ca serait pas une combinaison de Check l'objet CheckBox et Evaluate pour créer une chaîne/résultat concaténé pour créer un nom "absolu" ?
Genre Check01 créé par Check_évalue(01) qui serait censé coller la chaîne "Check" à la chaîne "01" ?
 
Avec un tableau de Check[], si j'ai compris, ça donnerait
Check[myarray(0,valeur)].Value = 1  




Talisker a ouvert ce post pour moi car je n etais pas reference sur les forums, c est chose faite !
 
C'est exactment cela ! agir sur l objet checkbox nommé check01, en concatenant "Check" a une variable dont la valeur est "01".
 
Par contre, je suis debutant en VB, et en programmation tout court, alors j avance a petit pas, habitué a écrire des scrpts shells, la programmation objet est un peu flou pour moi !
 
Pourrais-tu préciser ce que tu appelles un tableau de check[] ? C'est comme la définiton d'un array() ? Pourrais-tu me donner un exemple de code l illustrant ?
 
Merci par avance. :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed