Asghaard
Messages postés13Date d'inscriptionmardi 27 avril 2004StatutMembreDernière intervention31 août 2006
-
24 août 2006 à 09:35
Asghaard
Messages postés13Date d'inscriptionmardi 27 avril 2004StatutMembreDernière intervention31 août 2006
-
24 août 2006 à 10:34
Bonjour,
(je fais des macros sous VBE Excel)
Je ne parviens pas à trouver comment effacer une ligne précise dans un fichier en .txt
je sais écrire à la fin avec .WriteLine
je sais tout lire grâce à .ReadAll
mais comment faire pour, par exemple, supprimer les 3 premières ligne sdu fichier texte à l'aide d'une macro ou comment supprimer une ligne précise (autre que la dernière ligne ! )
jrivet
Messages postés7393Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 24 août 2006 à 09:45
Salut,
Essaie ceci. j'espere que cela t'aidera.
Dim Fso As New FileSystemObject
Dim TStream As TextStream
Dim Contenu As String
Dim Lignes() As String
Dim i As Integer
Set TStream = Fso.OpenTextFile("C:\2.txt", ForReading)
'On lit tout d'un coup
Contenu = TStream.ReadAll
Call TStream.Close
'On recupere toutes les lignes grace a la fonciton Split
Lignes = Split(Contenu, vbCrLf)
'[.. operation sur tes lignes]
'Lignes(0) = Premiere ligne
'Lignes(1) = Seconde ligne...
'... Lignes(Ubound(Lignes)) = Derniere ligne
'Ne pas oublier de décaler les lignes vides redimensionner le tableau
'OU bien n'ecrire que les lignes non vides
Set TStream = Fso.OpenTextFile("C:\2.txt", ForWriting)
For i = LBound (Lignes) To UBound(Lignes)
Call TStream.WriteLine(Lignes(i))
'OU If Lignes(i) <> "" Then Call TStream.WriteLine(Lignes(i))
Next
Call TStream.Close
Set TStream = Nothing
Set Fso = Nothing
Asghaard
Messages postés13Date d'inscriptionmardi 27 avril 2004StatutMembreDernière intervention31 août 2006 24 août 2006 à 09:45
Edit :
Le but final étant de tout copier le fichier texte sauf les 3 premières lignes.
plutôt que de supprimer les 3 premières lignes, existe-t-il une solution qui permettrait de copier toutes les lignes sauf les 3 premières ?
jrivet
Messages postés7393Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 24 août 2006 à 10:20
Salut,
J ai mis en référence au projet Microsoft Scripting Runtime.
Mais comme dans le premier post tu parlais de .ReadAll et WriteLine (methodes du textstream) je pensais que tu l'avais ajouter comme référence aussi.