Ouvrir un fichier txt avec le bloc note et remplacer guillemets
SB
-
SB -
SB -
Bonjour,
Je débute avec VBA et je souhaiterai ouvrir un fichier txt directement via le bloc note et supprimer des guillemets dans ce fichier txt.
Ci-dessous ce que j'ai:
Workbook.Open Filename:= _
"T:\Reprise_donnees.txt" _
, UpdateLinks:=0
Cells.Select
Selection.Replace What:=""""""", Replacement:=""", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
J'ai eu beau chercher sur le forum je n'arrive pas à trouver la solution
Merci d'avance de votre aide
Je débute avec VBA et je souhaiterai ouvrir un fichier txt directement via le bloc note et supprimer des guillemets dans ce fichier txt.
Ci-dessous ce que j'ai:
Workbook.Open Filename:= _
"T:\Reprise_donnees.txt" _
, UpdateLinks:=0
Cells.Select
Selection.Replace What:=""""""", Replacement:=""", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
J'ai eu beau chercher sur le forum je n'arrive pas à trouver la solution
Merci d'avance de votre aide
A voir également:
- Ouvrir un fichier txt avec le bloc note et remplacer guillemets
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Ouvrir un fichier .dat - Guide
- Comment ouvrir un fichier docx ? - Guide
- Comment ouvrir un fichier 7z - Guide
7 réponses
Bonjour,
Pourquoi passer par le bloc note ???
Essaies ce code qui agit directement sur le fichier choisi :
Cordialement
Patrice
Pourquoi passer par le bloc note ???
Essaies ce code qui agit directement sur le fichier choisi :
Sub ElimineGuillemets() ' Choix, lecture et écriture d'un fichier binaire. Dim nomComplet As String 'nom complet du fichier Dim nomFichier As String 'nomFichier sélectionné Dim str As String 'texte original du fichier Dim txt As String 'texte à écrire dans le fichier nomComplet = Application.GetOpenFilename("Fichier texte (*.txt),*.txt") If nomComplet = "" Then Exit Sub nomFichier = Split(nomComplet, "\")(UBound(Split(nomComplet, "\"))) str = LireTexte(nomComplet) If str <> "" Then txt = Replace(str, Chr(34), "") If EstEcritTexte(txt, nomComplet) Then MsgBox "Remplacement des guillemets effectué dans " & nomFichier Else MsgBox "Echec à l'écriture de " & nomFichier End If End If End Sub Private Function LireTexte(ByVal nomCompletFichier As String) As String ' Lecture d'un fichier binaire sous forme de texte (caractères ASCII). Dim n°F As Integer 'numéro du fichier On Error Resume Next If Dir(nomCompletFichier) = "" Then Exit Function n°F = FreeFile Open nomCompletFichier For Binary Access Read As #n°F LireTexte = Space$(LOF(n°F)) Get #n°F, , LireTexte Close #n°F On Error GoTo 0 End Function Private Function EstEcritTexte(texteASCII As String, nomCompletFichier As String) As Boolean ' Effectivité de l'écriture d'un fichier binaire sous forme de texte (caractères ASCII). Dim n°F As Integer 'numéro du fichier On Error Resume Next If Dir(nomCompletFichier) <> "" Then Kill nomCompletFichier n°F = FreeFile Open nomCompletFichier For Binary Access Write As #n°F Put #n°F, , texteASCII EstEcritTexte = True Close #n°F On Error GoTo 0 End Function
Cordialement
Patrice
Bonjour,
je suis obligée de passer par bloc note car c'est lors de l'enregistrement du fichier excel que les guillements sont triplés :"nom"devient """nom""" dans bloc note. Mais si tu as une solution pour éviter ça, ça simplifierait effectivement la manip..!
merci d'avance de ton aide
je suis obligée de passer par bloc note car c'est lors de l'enregistrement du fichier excel que les guillements sont triplés :"nom"devient """nom""" dans bloc note. Mais si tu as une solution pour éviter ça, ça simplifierait effectivement la manip..!
merci d'avance de ton aide
Il n'y a aucun rapport entre le Bloc Note et Excel !!!
«je suis obligée de passer par bloc note ...» C'est à dire ? Comment opères-tu ?
Pour éliminer les guillemets d'un fichier txt, à l'aide d'une macro VBA Excel, sans l'ouvrir dans Excel et sans passer par le bloc note la solution est ci dessus !!!!
«je suis obligée de passer par bloc note ...» C'est à dire ? Comment opères-tu ?
Pour éliminer les guillemets d'un fichier txt, à l'aide d'une macro VBA Excel, sans l'ouvrir dans Excel et sans passer par le bloc note la solution est ci dessus !!!!
Bonjour,
Voici comment je procède :
1 - je crée un fichier excel dans lequel les noms sont entre guillemets :"nom"
2 - j'enregistre ce même fichier en format txt
3 - lorsque j'ouvre ce ficheir txt avec le bloc note, j'ai la surprise de constater que le nombre de guillemets a été triplé : """nom"""
4 - donc dans le bloc note, je fais rechercher """ et remplacer par "
5 - Enfin je peux récupérer le fichier txt pour l'importer dans un ERP
navrée, mais je vois mal comment procéder autrement..
merci de votre aide
Voici comment je procède :
1 - je crée un fichier excel dans lequel les noms sont entre guillemets :"nom"
2 - j'enregistre ce même fichier en format txt
3 - lorsque j'ouvre ce ficheir txt avec le bloc note, j'ai la surprise de constater que le nombre de guillemets a été triplé : """nom"""
4 - donc dans le bloc note, je fais rechercher """ et remplacer par "
5 - Enfin je peux récupérer le fichier txt pour l'importer dans un ERP
navrée, mais je vois mal comment procéder autrement..
merci de votre aide
Re,
« je vois mal comment procéder autrement..» :
Ne pas mettre les noms entre guillemets, Excel s'en charge !
« je vois mal comment procéder autrement..» :
Ne pas mettre les noms entre guillemets, Excel s'en charge !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
"Ne pas mettre les noms entre guillemets, Excel s'en charge"
.....et bien non, j'ai bien entendu essayé. Dans Excel, mon format de cellule est pourtant du texte et enregistré en .txt puis ouvert sur bloc note les noms ne sont pas encadrés de guillemet..
navré d'insister mais j'aimerai connaitre le code VBA pour ouvrir un fichier avec le bloc note
merci
"Ne pas mettre les noms entre guillemets, Excel s'en charge"
.....et bien non, j'ai bien entendu essayé. Dans Excel, mon format de cellule est pourtant du texte et enregistré en .txt puis ouvert sur bloc note les noms ne sont pas encadrés de guillemet..
navré d'insister mais j'aimerai connaitre le code VBA pour ouvrir un fichier avec le bloc note
merci