cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010
-
3 mai 2006 à 08:42
alosamoelle
Messages postés129Date d'inscriptionjeudi 28 octobre 2004StatutMembreDernière intervention23 mai 2009
-
3 mai 2006 à 14:59
salut j'ai fais un code qui permet de mettre a laligne chaque chaine qui est avant un ; le pb c'est qu'il m'enléve bien les ; mais ne me l'ai mes pas a la ligne. Voici le code
Private Sub Command4_Click()
Dim st As String
Dim St1() As String
st = "dede; toto;2;12055;;;;12548;;;;OK;;;;0;;"
St1() = Split(st, ";")
For i = 0 To UBound(St1)
Text2.Text = Text2.Text & St1(i)
Next i
End Sub
il m'affiche tous comme ca dedetoto212005................et moi je veux
toto
dede
210055
merci de bien vouloire m'aider j'ai chercher m'ai ai pas trouver pb
alosamoelle
Messages postés129Date d'inscriptionjeudi 28 octobre 2004StatutMembreDernière intervention23 mai 20091 3 mai 2006 à 11:20
Si tu veux le faire par fichier creer un bouton pour ecrire le fichier et mets
FileNumber = FreeFile
Open App.Path & "\fichier.tmp" For Append As #FileNumber
Print #FileNumber, Text1.Text
Close #FileNumber
Ensuite un bouton pour lire
Dim Ligne As Integer
Ligne = 1
FileNumber = FreeFile
Open App.Path & "\fichier.tmp" For Input As #FileNumber
' lire par ligne
Do Until EOF(1)
Line Input #1, texte
MsgBox "Ligne " & Ligne & " : " & texte
'incremente le numéro de la ligne
Ligne = Ligne + 1
Loop
Close #FileNumber
et dans ton unload de ta form tu mets pour effacer le fichier
On Error GoTo fin
Kill App.Path & "\fichier.tmp"
fin:
Voila je l'ai fait vite fait donc cela peut etre amélioré mais tu as dans ce fichier toutes tes lignes donc aprés tu en fais ce que tu veux
alosamoelle
Messages postés129Date d'inscriptionjeudi 28 octobre 2004StatutMembreDernière intervention23 mai 20091 3 mai 2006 à 14:48
Voila remplace dans le bouton pour lire le fichier
Dim Ligne As Integer
Ligne = 1
FileNumber = FreeFile
Open App.Path & "\fichier.tmp" For Input As #FileNumber
' lire par ligne
Dim Mot(20)
Do Until EOF(1)
Line Input #1, texte
c = Split(texte, ";")
For i = 0 To UBound(c)
Mot(i + 1) = c(i)
Next i
MsgBox "Ligne " & Mot(3) & " " & Mot(1) & " " & Mot(7)
'incremente le numéro de la ligne
Ligne = Ligne + 1
Loop
Close #FileNumber
A la fin de chaque ligne chaque mot entre les points virgules s'appelent mot(1),mot(2).....
Apres tu classes tes mots dans l'ordre que tu veux
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 08:55
merci mai vbcrlf m'affiche de cette facon toto||dede||20145 il me les mets entre pipes et non a la ligne c bizarre car je savais que c'était considéré comme le passage à la ligne. (tout ca est fais en vb6)
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 09:02
MINDIELL ta méthode fonctionne aussi bien mais pourquoi vbcrlf ne me fais pas passer a la ligne c peut être parce que c'est un text box je vais essayer avec un label
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 09:11
j'ai un autre pb aprés que sela a été fais je voudrais mettre toute ses valeur dans des variable pour pouvoir les rappeler ensuite et les mettre ds l'ordre que je désire.mais je ne sais pas comment faire.
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 09:29
merci sa fonctionne et si je veut mettre ses variable ds une chaine de caractere pour pouvoir les rappeller et les remmetre ds l'ordre que je veux comment faire
alosamoelle
Messages postés129Date d'inscriptionjeudi 28 octobre 2004StatutMembreDernière intervention23 mai 20091 3 mai 2006 à 10:33
met dans les declarations générales
Dim Ligne(100) ' j'ai mis jusqu'a 100 lignes tu peux adapter
'et en suite soit dans une function soit dans un commandbutton par exemple
a = Text1.Text
numero = 1
For n = 1 To Len(a)
lettre = Mid$(a, n, 1)
If lettre = Chr$(13) Then
: Ligne(numero) = mot
: numero = numero + 1
: mot = ""
: GoTo suivant
Else
: mot = lettre & mot
End If
suivant:
Next
Ensuite pour lire la ligne 4 par exemple tu mets
MsgBox Ligne(4)
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 10:59
désoler j'ai essayer mais le pb c'est que je ne comprend pas vraiment le mot toto est mis ds un chaine de caractere mais cette chaine de caractere ou esceque je la voit. Il faut bien ql soit mise qqpart ou est -elle mise car qd j'essai ton code il me dit tableau inexistant ou un truc de se genre. moi je penser q"aprés avoir eclater la ligne que chaqune des valeur qui est sur chaque ligne doit être mis ds un fichier temporaire et que je puisse les rappeller pour pouvoir les réorganiser. comme je le souhaite.
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 12:06
Si je veux mettre ds un label il me suffit de changer au niveaux du texte. mais comment je doit faire si aprés avoir fait sa je veux reprendre une par une les variables et les réafficher ds l'ordre voulue. je penser a ouvrir le fichier temp puis a lire la premier et ainsi de suite et m'arrêter a celle qui m'intéresse.
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 3 mai 2006 à 13:53
le classement que je veut faire serait plutot un classement par critere
je voudrais par exemple classer des mot mais aussi des chiffres. Il faut en + que je classe 20 caractere en 4 ligne.
en réaliter je veux retirer les elemnt de la premier ligne du fichier t1 qui est ecrit de cette facon a;b;c;d;e;f;g;h et mettre chaqune des variable ds t2 de la facon suivante :
a
b
c
d
e
f
g (ss las point virgule)
puis ensuite reprendre les valeur et les replacer de la facon suivante c;a;g;f;e;d . tt cela pour la premier ligne de t1 puis de que ses fais je dois passer a la ligne suivante de t1 et faire la mm chose.
pour cela j, je definit des string. Mais pour le reste je ne sé pas comment faire.
j'espere que j'ai était assez précise sur se que je voulais car je ne connait pas la méthodes