cs_vinz78
Messages postés207Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention24 juillet 2007
-
29 mai 2007 à 10:22
cs_vinz78
Messages postés207Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention24 juillet 2007
-
30 mai 2007 à 13:50
bon je poste ici sa sera peut etre plus approprié qu'en vb.net
Public Sub test3
Dim fs, ligne
Set fs = CreateObject("Scripting.FileSystemObject")
Set b = fs.OpenTextFile("E:\wamp\www\Projet\Projet2\formulaire.txt", 1, 0)
For Each element in form1
element = split(element.name, " : " , element.value, 1)
element.value = b.Readline
Next
b.Close
End Sub
J'ai essayer sa mais sa me met une erreur je pense que sa vient de cette ligne
element = split(element.name, " : " , element.value, 1)
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 mai 2007 à 15:21
1)
On trouve ici tout ce qu'il faut pour ouvrir un fichier texte en VBS et le lire ligne par ligne. On peut même décider du nombre de lignes que l'on veut lire...
http://www.vbfrance.com/code.aspx?ID=7964 ce qui évite le split ...
2) Pour chaque lecture de ligne, winz78 veut extraire ce qui se trouve après le signe :
Je n'ai pas compris sa réponse à propos de chaine qui n'est pas toujours la même (évidemment(, qu'elle n'est pas la même ... car sinon : pourquoi chercherait-tonb à extraite ce que l'on connaitrait déjà ???)
L'exemple que je t'ai donné, Winz, était un exle (pour que tu comprennent le mécanisme :
Private Sub Command1_Click()
chaine_complete = "titi : toto"
chaine_toto = Trim(Mid(chaine_complete, InStr(chaine_complete, ":") + 1))
MsgBox chaine_toto
End Sub
Il est clair que, dans cet exemple, chaine_complete est la ligne de ton fichier (donc variable).
Je ne lui ai donné là la valeur "titi : toto" que pour que tu comprennes...
Je lui aurais donné la valeur "ce que j'aime : ce sont les cerises", chaine_toto contiendrait "ce sont les cerises"
Est-ce vraiment si difficile de comprendre comment utiliser ce machin à 3 sous espagnols ?
faut-il vraiment tout faire, dans le détail ?
voilà, donc (où ta_ligne_lue est la ligne lue dans ton fichier... puisque les lignes y seront lues une par une et où ta_valeur est, pour chaque ligne lue, ce qui se trouve entre le signe : et la fin de la ligne lue..)
Devoir aller plus loin dans les explications serait à mon sens un peu fort, quand même !!!
Private Sub Command1_Click()
ta_valeur= Trim(Mid(ta_ligne_lue, InStr(ta_ligne_lue, ":") + 1))
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_vinz78
Messages postés207Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention24 juillet 2007 29 mai 2007 à 15:43
euh mon pseudo c'est vinz merci de pas l'ecorcher =p et j'ai très bien compris ton code de tout a l'heure le truc c'est que je t'ai répondu il ne me servirai pas j'ai beaucoup trop d'info a rentrer.
"Est-ce vraiment si difficile de comprendre comment utiliser ce machin à 3 sous espagnols ?"
bah déja j'ai compris et meme si j'avais pas compris je m'excuse mais c'est un forum pour débutant c'est donc normal de demander un peu d'aide =) pas besoin de le prendre comme sa .
Je suis toujours en train de chercher mais comme je l'ai déja dit le hta est un langage très peu utilisé et très peu le connaisse.
cs_vinz78
Messages postés207Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention24 juillet 2007 29 mai 2007 à 15:51
dans ton code le toto pour moi fait parti du formulaire et je ne sais pas comment le dire
par exemple Nom : Mr X ou Mr X est "name" je ne pourrais pas écrire chaine_name sans lui dire que name vient du formulaire. C'est peut etre pas très claire mais si vous mavez compris c'est déja sa =)
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 mai 2007 à 15:52
Si c'est du VBS, qu'il utilise, je t'ai indiqué un lien où l'on lit un fichier texte ligne par ligne (source classifiée "pour débutant", précisément :)
http://www.vbfrance.com/code.aspx?ID=7964 Il te reste simplement à n'y prendre que ce qui te sert et à appliquer ensuite à chaque ligne lue mon petit code d'extraction de ce qui se trouve après le :
Si ce n'est pas du VBS, mais que c'est du VB ou du VBA, on va te l'écrire pour VB ou VBA, sans aucun problème...
Si ce n'est ni du VBS, ni du VB, ni du VBA, ni du VB.NET... personne ne pourra t'aider, à moins d'être devin ou que tu nous dises clairement quel est le langage compris et utilisé par ton "hta"..
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 mai 2007 à 15:59
Nous aimons bien, Winz78, que les choses soient claires :
tu nous as exposé que tu avais une variable element composée de la concatenation d'une chaine (ton element.name), d'un signe : et d'une deuxième chaine (ton element.value) et que tu voulais extraire la deuxième chaîne (element.value, qui suit le signe :)
C'est exactement ce que fait le petit bout de code !
C'est bien du vbs qu'on utilise dedans. J'ai regardé le code mais bon je dois avoir une notion différente de débutant que tout le monde car c'est pas en recopiant un code et en le collant que sa va marché hors je ne vois pas ou il faut le placer par rapport a ton code et comment appliquer ton code a mon projet.
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 mai 2007 à 16:07
Un code de niveau débutant est analysable par un débutant.
Une fois le code analysé et compris, on en extrait ce dont on a besoin, pour l'utiliser là où on en a besoin.
Débutant ou non, tu sais au moins une chose : ce que tu veux faire.
Il me semble avoir compris que tu veux lire toutes les lignes d'un fichier texte et agir pour chacune des lignes (en en extrayant une partie)
Le mécanisme d'ouverture et de lecture est dans le lien et il est simple.
le mécanisme d'extraction t'a également été donné.
Voilà.
Commence par ecrire ces deux choses là, déjà, avant même de passer au reste (ce que tu vas faire de la chaîne extraite).
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 mai 2007 à 16:36
La procédure de lecture ligne par ligne en code VBS, lit, comme son nom l'indique, ligne par ligne...
Le petit bout de code que je t'ai donné n'est là, à chaque lecture d'une ligne, que pour en extraire ce que tu veux extraire.
Allez !
Commence donc par le code de lecture ligne par ligne de ton fichier (sans extraire). On te dira alors où, dans ton code de lecture, insérer celui de l'extraction.
Commence donc par ce code de lecture ligne par ligne (extrais de celui du lien les seuls lignes de code qui te concernent).
Winz78 : je veux qu'une chose soit maintenant claire : je ne connais absolument pas VBS (je ne suis donc même pas un débutant en VBS, comme toi, mais un total zéro ). J'ai quand même analysé ce code et n'aurais absolument aucune difficulté à en extraire ce qui convient à ton casAU MOINS comme le zéro que je suis en VBS, s'il te plait).
cs_vinz78
Messages postés207Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention24 juillet 2007 29 mai 2007 à 16:39
tu ma l'air quand meme de ty connaitre pas mal en prog (ta fais pa mal de source pour un zéro =) ) que ce soit vbs oupa moi la seule chose que je connais c'est le php et encore xD
je vais essayer de me pencher sur ce que vous m'avez dit tous les deux en tout cas merci pour le temps passé sur mon "cas" =)
drikce06
Messages postés2236Date d'inscriptionlundi 29 mai 2006StatutMembreDernière intervention29 mai 200810 29 mai 2007 à 16:42
C'est où que tu as une erreur sur ce sript:
VBS, ----Const ForReading 1, ForWriting 2
Dim oFso, f
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("c:\tmp\fichier1.txt", ForReading)
while Not f.AtEndOfStream
wscript.echo f.ReadLine
Wend
f.Close