Bonjour,
Je souhaiterai supprimer les lignes ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" d'un fichier csv
En cherchant sur les forums j'ai trouvé ce code que j'ai essayé d'adapter à mon fichier :
Public Sub ModifDonnees()
ReDim Tablo(0) As String
Dim NomDuFich As String, NoDuFich As Integer
Dim ChaineSource As String, ChaineDestin As String
Dim Ligne As String, TotLig As Long, I As Long
'init
NomDuFich = "C:\Import variable Talentia\IMPDV.csv" '<<< à remplir !!!!!!!!!
ChaineSource = ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"
ChaineDestin = ""
' load
NoDuFich = FreeFile: TotLig = 0
Open NomDuFich For Input As #NoDuFich
Do While Not EOF(NoDuFich)
Line Input #NoDuFich, Ligne
If Ligne = ChaineSource Then
Ligne = ChaineDestin
Else
I = InStr(Ligne, ChaineSource)
If I Then Ligne = Left(Ligne, I - 1) & ChaineDestin & Mid(Ligne, I + Len(ChaineSource))
End If
TotLig = TotLig + 1: ReDim Preserve Tablo(TotLig): Tablo(NoLig) = Ligne
Loop
Close NoDuFich
'recopie
If TotLig > 0 Then
NoDuFich = FreeFile: Open NomDuFich For Output As #NoDuFich
For I = 1 To TotLig: Print #NoDuFich, Ligne: Next
Close NoDuFich
End If
End Sub
Le problème c'est qu'il me supprime tout le fichier
Auriez vous une solution à me proposer?
Merci pour vos retours
Bien à vous
Je souhaiterai supprimer les lignes ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" d'un fichier csv
En cherchant sur les forums j'ai trouvé ce code que j'ai essayé d'adapter à mon fichier :
Public Sub ModifDonnees()
ReDim Tablo(0) As String
Dim NomDuFich As String, NoDuFich As Integer
Dim ChaineSource As String, ChaineDestin As String
Dim Ligne As String, TotLig As Long, I As Long
'init
NomDuFich = "C:\Import variable Talentia\IMPDV.csv" '<<< à remplir !!!!!!!!!
ChaineSource = ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"
ChaineDestin = ""
' load
NoDuFich = FreeFile: TotLig = 0
Open NomDuFich For Input As #NoDuFich
Do While Not EOF(NoDuFich)
Line Input #NoDuFich, Ligne
If Ligne = ChaineSource Then
Ligne = ChaineDestin
Else
I = InStr(Ligne, ChaineSource)
If I Then Ligne = Left(Ligne, I - 1) & ChaineDestin & Mid(Ligne, I + Len(ChaineSource))
End If
TotLig = TotLig + 1: ReDim Preserve Tablo(TotLig): Tablo(NoLig) = Ligne
Loop
Close NoDuFich
'recopie
If TotLig > 0 Then
NoDuFich = FreeFile: Open NomDuFich For Output As #NoDuFich
For I = 1 To TotLig: Print #NoDuFich, Ligne: Next
Close NoDuFich
End If
End Sub
Le problème c'est qu'il me supprime tout le fichier
Auriez vous une solution à me proposer?
Merci pour vos retours
Bien à vous