Bonjour à tous,
a partir d'un fichier excel convertit en txt (csv avec des point virgules pour le séparateur) je dois venir lire et écrire des données dans ce fichier txt en VB. Je dois passé par le txt car le poste ou sera installé le programme ne dispose pas de licence office (excel entre autre). Cependant, le fichier txt (une fois modifié) sera exploité par un autre pc qui dispose de excel.
j'ai trouvé et modifié ce code afin de me permettre de stocker le contenu du txt dans un tableau à 2 dimensions (comme dans une cellule excel)
Sub test2()
Dim cellule(80, 80) 'la variable qui va stocker le contenu du txt
FN = FreeFile
Open "fichier.txt" For Input As #FN
T = Split(Input(LOF(FN), #FN), vbCrLf)
Close #FN
'Ici, T contient tout le fichier. Chacun de ses éléments est une ligne
For i = i To UBound(T) 'lecture de chaque ligne (élément du tableau)
T2 = Split(T(i), ";") 'séparer cette ligne aux points-virgules
For j = 0 To UBound(T2) 'lecture du 2eme tableau qui contient les éléments
'MsgBox T2(j)
'MsgBox T(j)
cellule(i + 1, j + 1) = T2(j) 'on remplie le tableau cellule de chaque élément ligne par ligne
'MsgBox "" & cellule(i, j) & ""
Next
Next
Stop
End sub
je ne sais pas et suis vraiment pas sur que ce soit la meilleure solution (si vous avez mieux je prend ).
imaginons maintenant que mon fichier csv (ou txt) soit:
nom;prénom;age
boby;lapointe;50
jo;toto;19
grace à ma variable cellule je sais que cellule(3,2)="toto"
la question est: comment remplacer "toto" par "tatan" dans le fichier txt et puis sauvegarder.
tout ca bien sur, pour comprendre comment écrire à un endroit précis (ligne colone ou ";") dans un txt.
Merci et très bon week end à tous
Si vous avez une solution qui permettent de naviguer rechercher remplacer écrire dans txt je suis ouvert.
a partir d'un fichier excel convertit en txt (csv avec des point virgules pour le séparateur) je dois venir lire et écrire des données dans ce fichier txt en VB. Je dois passé par le txt car le poste ou sera installé le programme ne dispose pas de licence office (excel entre autre). Cependant, le fichier txt (une fois modifié) sera exploité par un autre pc qui dispose de excel.
j'ai trouvé et modifié ce code afin de me permettre de stocker le contenu du txt dans un tableau à 2 dimensions (comme dans une cellule excel)
Sub test2()
Dim cellule(80, 80) 'la variable qui va stocker le contenu du txt
FN = FreeFile
Open "fichier.txt" For Input As #FN
T = Split(Input(LOF(FN), #FN), vbCrLf)
Close #FN
'Ici, T contient tout le fichier. Chacun de ses éléments est une ligne
For i = i To UBound(T) 'lecture de chaque ligne (élément du tableau)
T2 = Split(T(i), ";") 'séparer cette ligne aux points-virgules
For j = 0 To UBound(T2) 'lecture du 2eme tableau qui contient les éléments
'MsgBox T2(j)
'MsgBox T(j)
cellule(i + 1, j + 1) = T2(j) 'on remplie le tableau cellule de chaque élément ligne par ligne
'MsgBox "" & cellule(i, j) & ""
Next
Next
Stop
End sub
je ne sais pas et suis vraiment pas sur que ce soit la meilleure solution (si vous avez mieux je prend ).
imaginons maintenant que mon fichier csv (ou txt) soit:
nom;prénom;age
boby;lapointe;50
jo;toto;19
grace à ma variable cellule je sais que cellule(3,2)="toto"
la question est: comment remplacer "toto" par "tatan" dans le fichier txt et puis sauvegarder.
tout ca bien sur, pour comprendre comment écrire à un endroit précis (ligne colone ou ";") dans un txt.
Merci et très bon week end à tous
Si vous avez une solution qui permettent de naviguer rechercher remplacer écrire dans txt je suis ouvert.
Dernière édition: