Inclure une variable dans le code

Résolu
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006 - 24 févr. 2006 à 23:06
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006 - 25 févr. 2006 à 22:15
Salut à tous,
J'ai un problème je fais une boucle pour écrire dans une variable une instruction if /end if
ex:

For i = 0 To UBound(fonction)
montab = Split(fonction(i), "mtcl")commande commande & "If Phrase " & montab(0) & "Then" & vbCrLf & montab(1) & vbCrLf & "End If" & vbCrLf
Next i

mais maintenant je voudrai le mettre(commande) dans mon code mais je sais pas comment faire (inserer commande seul ne marche pas)
Ca peut parraitre bête mais je cherche depuis 2h !

Merci d'avance à ceux qui ne dorment pas encore


22 réponses

cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
25 févr. 2006 à 17:11
re,
voici un code peut etre util :),
N.B:il faut ajouter la reference windows scriptcontrol (projet/references)
creer un textbox nomé text1 et mets ce texte dedant :
Internetmtclsub main():Dim Exec:Set Exec=CreateObject("Wscript.Shell"):Exec.Run "iexplore.exe":end sub
creer un commandbutton et ds son code tu mets :
Dim VBS As New ScriptControl
Private Sub Command1_Click()
VBS.Language = "vbs"
VBS.AllowUI = True
code = Split(Text1, "mtcl")
If code(0) = "Internet" Then
VBS.AddCode code(1)
VBS.Run "main"
End if
End Sub
++


<HR>

Life is short...Learn more
Copy Rights <> Rights to Copy
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
25 févr. 2006 à 19:31
oui :



dim i as integer

i = 3



s'écrit aussi



dim i as integer : i = 3
3
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
25 févr. 2006 à 22:08
non pas possible d'utiliser l'api shellexecute en vbs. l'exemple que j'avais fais fera l'affaire en executant media player.


<HR>

Life is short...Learn more
Copy Rights <> Rights to Copy
3
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
24 févr. 2006 à 23:28
salut,
ce n'est pas possible d'executer un code de cette façon, pour le debugeur commande c une variable, et pas un code a executé.


<HR>

Life is short...Learn more
Copy Rights <> Rights to Copy
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
24 févr. 2006 à 23:32
Merci de ta réponse mais si je fais sa :
For i = 0 To UBound(fonction)
montab = Split(fonction(i), "mtcl")
If Phrase = montab(0) Then
montab (1)
End If
Next i

Le débugueur me dit :
erreur de compilation :
sub,Function ou Propety attendue
0
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
24 févr. 2006 à 23:36
desolé, mais oublies cette idee, ça ne marchera jamais.


<HR>

Life is short...Learn more
Copy Rights <> Rights to Copy
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
24 févr. 2006 à 23:41
Snif
personne n'a d'autre idée
0
Utilisateur anonyme
25 févr. 2006 à 00:07
Salut,

Si c'est possible, j'avais réussit a faire un truc de se genre.
Mais désolé, je me souviens plus comment et comme je ne pratique plus le VB6 je m'en souviens encore moins.
J’essayerai de faires quelques recherches demain

Kenji
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
25 févr. 2006 à 03:23
salut,

en effet c'est possible (composant Microsoft ScriptRun1.0 de mémoire). mais le déboggage est assez chatouilleux.

forcément, si le code est généré par une boucle qui elle même contient un :



si Variable_Tableau(0) <--- 0 pouvant ne pas existant
= UneChaine <---- on suppose
alors

execute Variable_Tableau(1) <---- aucun sens ...




cf :

If Phrase = montab(0) Then

montab (1)

End If



mieux vaut essayer de.. repenser le problème...



exemple

(après test de l'existance de chaque dimention)

if montab(1) like "msgbox *" then

montab(1) = replace(montab(1),chr$(34), vbnullstring)

msgbox replace(montab(1), "msgbox ", vbnullstring)

....



enfin, dans l'idée...

++

PCPT [AFCK]
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 09:40
Merci beaucoup je vais essayer

@+
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 10:03
Il n'y a pas moyen sinon d'inclure dans le code et non dans un champ de texte une fichier texte ?
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
25 févr. 2006 à 12:58
si sans problème.

ta variable reçoit le contenu de ton fichier, et donne ta variable en paramètre au script (composant) pour qu'il l'execute....

mais TRéS DéCONSEILLé
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 13:41
Merci de ta réponse
J'ai pas super compris pour donner le contenu du fichier c'est pas un problème mais après la donner au script en composant je sais pas comment faire
@+
0
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
25 févr. 2006 à 16:07
salut,
pour une variable c impossible, sinon pour le control scriptiong là on parle de vbs donc ne permet pas toutes les possiblité ouverte a visual basic, comme l'utilisation d'api 32, la manipulation des controle de la form.en gros ça sert pas a grande chose surtout pour ton idee.


<HR>

Life is short...Learn more
Copy Rights <> Rights to Copy
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 16:22
merci pour ta réponse

J'ai réfléchi et si c'est pas possible autant tout repenser !
.....mais j'ai pas d'idée
Je vous explique mon projet en simplifié :
L'utilisateur tape un mot ex : internet
L'ordinateur lance internet
Mais maintenant je veux mettre le tout dans un fichier texte avec la forme "internetmtcl[code qui lance internet]" donc le séparateur c'est mtcl
j'ai fait sa aussi :(simplifié)
montab = Split("internetmtcl[code qui lance internet]", "mtcl")
Do While Phrase = montab(0)
montab (1)
Exit Do
Loop

Mais c'est le même problème la variable toute seule(montab (1))
Du à la diversité des codes à lancer je n'ai aucune idée
Et vous ?

Merci d'avance
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 17:31
Merci bien je vais essayer
@+
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 18:38
Et une dernière question : c'est pour le retour à la ligne

Mille mercis
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 18:42
pardon ":" c'est pour le retour à la ligne?
Et le code dans le champ de texte ce doit être du vbs?
0
thongthephu Messages postés 97 Date d'inscription vendredi 13 août 2004 Statut Membre Dernière intervention 13 mai 2006
25 févr. 2006 à 21:24
Et le code dans le champ de texte ce doit être du vbs?
0
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
25 févr. 2006 à 21:37
salut


tu auras le choix entr vbs et Js



<HR>




Life is short...Learn more
Copy Rights <> Rights to Copy
0
Rejoignez-nous