HELP !!! Enregistrement d'un tableau dans fichier [Résolu]

Signaler
Messages postés
17
Date d'inscription
mercredi 20 octobre 2004
Statut
Membre
Dernière intervention
16 novembre 2007
-
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
-
Bonjour à tous ,

J'ai une appli composée de Form1 et Form2.
Dans La Form1, je crée un tableau T et j'aurais besoin de récupérer les données de T dans Form2.

Je ne sais pas comment faire alors j'ai pensé à enregistrer toutes les données de T dans un fichier .txt.

PROBLEME => je ne sais pas comment faire!

Pourriez vous m'expliquer comment fonctionne l'enregistrement d'un tableau dans un fichier TXT à moins que vous ayez d'autres idées ...

6 réponses

Messages postés
698
Date d'inscription
jeudi 16 janvier 2003
Statut
Membre
Dernière intervention
20 mai 2011
2
salut

si tu veux acceder a une variable de ta form1 depuis ta form2 fais
form1.maVariable au lieu de maVariable tout court.

encore faut-il que tu la declare en public
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 195 internautes nous ont dit merci ce mois-ci

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
25
Bonjour,

Pour enregistrer un tableau dans un fichier txt.



Private Sub Command1_Click()

Dim T(4) As Integer

T(0) = 21

T(1) = 15

T(2) = 299

T(3) = 455

T(4) = 12

Dim sChaine As String, i As Integer

sChaine = ""



For i = 0 To UBound(T) - 1

sChaine = sChaine & CStr(T(i)) & vbCrLf

Next i



sChaine = sChaine & CStr(T(UBound(T)))



Open "C:\truc.txt" For Output As #1

Print #1, sChaine

Close #1



MsgBox "Fichier truc.txt enregistré !", 32

Unload Me

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
Messages postés
86
Date d'inscription
vendredi 27 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2016
2
Salut,
plus simple

Private Sub Command1_Click()
Dim T(4) As Integer
T(0) = 21
T(1) = 15
T(2) = 299
T(3) = 455
T(4) = 12
Dim i As Integer, n as integer

n=Freefile 'Canal de sortie libre
open "c:\myFile.txt" for output as n

For i = 0 To UBound(T) - 1
print#n,T(i)
Next i
close n
MsgBox "Fichier enregistré !", 32
Unload Me
End Sub

Tomilliev
a+
Messages postés
86
Date d'inscription
vendredi 27 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2016
2
Encore moi,
pour communiquer des données entre deux feuilles il existe de nombreuses méthodes (Variables publics, globales, procédures...)
voir l'aide sur les portées des variables

Maintenant pour récupérer les données du fichier myFile.txt il faut faire

Dim Tbl() 'Entete du module (form, module ou classe)

Sub Lirefichier()
dim m as string, cpt as integer, n as integer

n=freefile 'canal libre

open "c:\myFile.txt" for input as n
do while not eof(n) 'boucle jusqu'a la fin du fichier
line input#n,m 'extrait une ligne
redim preserve Tbl(cpt) 'redim le tableau
tbl(cpt)=m 'save la ligne dans le tableau
cpt=cpt+1 'incrémente le compteur
loop 'suivant...
close n 'ferme le canal

'Voir le résultat dans un msgbox
m=""
for n=0 to ubound(tbl)-1
m=m & tbl(n) & vbcrlf
next n
msgbox M
end sub

Voila simple non?
Tomilliev
a+
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
25
Sachant que l'idée de transmettre les donnéees entre deux forms via un fichier sur disque est a mon avis à proscrire !!
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
25
... et comme un tableau ne peut être déclaré comme membre public d'un module objet, il faudra passer par une propriété indexé.

CR