Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonjour,
Puisqu'il y a un peu beaucoup de divination, une réponse théorique.
Faut travailler avec 2 fichiers.
1) Le fichier d'origine en lecture et le fichier de destination en
écriture.
2) Lire une donnée, ou une ligne complète, du fichier d'origine et
épurer.
3) Écrire la donnée, ou la ligne épurée, dans le fichier de
destination.
"David" a écrit dans le message de
news:ehdPHbx%Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et dedécaller des cellules), est-ce possible ?
Merci de votre aide.
Bonjour,
Puisqu'il y a un peu beaucoup de divination, une réponse théorique.
Faut travailler avec 2 fichiers.
1) Le fichier d'origine en lecture et le fichier de destination en
écriture.
2) Lire une donnée, ou une ligne complète, du fichier d'origine et
épurer.
3) Écrire la donnée, ou la ligne épurée, dans le fichier de
destination.
"David" <david.gilbert@chello.fr> a écrit dans le message de
news:ehdPHbx%23DHA.2348@TK2MSFTNGP09.phx.gbl...
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonjour,
Puisqu'il y a un peu beaucoup de divination, une réponse théorique.
Faut travailler avec 2 fichiers.
1) Le fichier d'origine en lecture et le fichier de destination en
écriture.
2) Lire une donnée, ou une ligne complète, du fichier d'origine et
épurer.
3) Écrire la donnée, ou la ligne épurée, dans le fichier de
destination.
"David" a écrit dans le message de
news:ehdPHbx%Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une
ligne et dedécaller des cellules), est-ce possible ?
Merci de votre aide.
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Split
et Join peut faire ce que tu souhaites en une seule passe :
'===================== > Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Split
et Join peut faire ce que tu souhaites en une seule passe :
'===================== > Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Split
et Join peut faire ce que tu souhaites en une seule passe :
'===================== > Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" a écrit dans le
message de news:Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Splitet Join peut faire ce que tu souhaites en une seule passe :
'===================== >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et dedécaller des cellules), est-ce possible ?
Merci de votre aide.
S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" <frederic.sigonneau@ouanadou.fr> a écrit dans le
message de news: 403E7019.3060007@ouanadou.fr...
Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Split
et Join peut faire ce que tu souhaites en une seule passe :
'===================== >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" a écrit dans le
message de news:Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des fonctions
Splitet Join peut faire ce que tu souhaites en une seule passe :
'===================== >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever tous
les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et dedécaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir ,
Split renvoie les différents morceaux d'une chaîne de caractères dans un
tableau, après découpage avec un délimiteur. Le délimiteur par défaut est
l'espace, ce qui fait que 'splitter' une phrase revient à en renvoyer tous
les
mots dans un tableau.
Join fait l'inverse. Cette fonction reconstitue une chaîne de caractères à
partir des éléments d'un tableau. Elle sépare les différents éléments à
l'aide
d'un délimiteur elle aussi, par défaut l'espace, comme pour Split.
En dehors d'opérations sur des tableaux, d'autant plus pratiques et
rapides à
manipuler que Split ne nécessite aucune boucle pour les remplir, l'intérêt
de
ces deux fonctions est aussi que quasiment n'importe quoi peut leur servir
de
délimiteur, y compris rien du tout (une chaine vide) pour Join.
Exemples de l'utilisation de Split et Join pour manipuler des chaines de
caractères :
'====================== > Sub SplitJoin()
Dim LaChaine$, LeDelimSplit$, LeDelimJoin$
Dim Arr, i&
LaChaine = "toto et tata et zozo et zaza"
LeDelimSplit = "et "
'remplissage du tableau
Arr = Split(LaChaine, LeDelimSplit)
'éléments de la chaîne :
For i = LBound(Arr) To UBound(Arr)
MsgBox Arr(i)
Next i
'reconstitution d'une chaine avec un autre délimiteur
LeDelimJoin = "ou "
MsgBox Join(Arr, LeDelimJoin)
'ou (autre délimiteur)
LeDelimJoin = ""
MsgBox Join(Arr, LeDelimJoin)
'la même chose, en une seule passe
'et avec les délimiteurs 'en dur'
MsgBox Join(Split(LaChaine, "et "), "")
'le troisième élément du tableau délimité
MsgBox Split(LaChaine, "et ")(2)
End Sub
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
a écrit:S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" a écrit dans le
message de news:Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des
fonctions
Splitet Join peut faire ce que tu souhaites en une seule passe :
'===================== > >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== > >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous
les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et dedécaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir j@c,
Split renvoie les différents morceaux d'une chaîne de caractères dans un
tableau, après découpage avec un délimiteur. Le délimiteur par défaut est
l'espace, ce qui fait que 'splitter' une phrase revient à en renvoyer tous
les
mots dans un tableau.
Join fait l'inverse. Cette fonction reconstitue une chaîne de caractères à
partir des éléments d'un tableau. Elle sépare les différents éléments à
l'aide
d'un délimiteur elle aussi, par défaut l'espace, comme pour Split.
En dehors d'opérations sur des tableaux, d'autant plus pratiques et
rapides à
manipuler que Split ne nécessite aucune boucle pour les remplir, l'intérêt
de
ces deux fonctions est aussi que quasiment n'importe quoi peut leur servir
de
délimiteur, y compris rien du tout (une chaine vide) pour Join.
Exemples de l'utilisation de Split et Join pour manipuler des chaines de
caractères :
'====================== > Sub SplitJoin()
Dim LaChaine$, LeDelimSplit$, LeDelimJoin$
Dim Arr, i&
LaChaine = "toto et tata et zozo et zaza"
LeDelimSplit = "et "
'remplissage du tableau
Arr = Split(LaChaine, LeDelimSplit)
'éléments de la chaîne :
For i = LBound(Arr) To UBound(Arr)
MsgBox Arr(i)
Next i
'reconstitution d'une chaine avec un autre délimiteur
LeDelimJoin = "ou "
MsgBox Join(Arr, LeDelimJoin)
'ou (autre délimiteur)
LeDelimJoin = ""
MsgBox Join(Arr, LeDelimJoin)
'la même chose, en une seule passe
'et avec les délimiteurs 'en dur'
MsgBox Join(Split(LaChaine, "et "), "")
'le troisième élément du tableau délimité
MsgBox Split(LaChaine, "et ")(2)
End Sub
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
j@c a écrit:
S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" <frederic.sigonneau@ouanadou.fr> a écrit dans le
message de news: 403E7019.3060007@ouanadou.fr...
Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des
fonctions
Split
et Join peut faire ce que tu souhaites en une seule passe :
'===================== > >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== > >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:
Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous
les
3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais en
plus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et de
décaller des cellules), est-ce possible ?
Merci de votre aide.
Bonsoir ,
Split renvoie les différents morceaux d'une chaîne de caractères dans un
tableau, après découpage avec un délimiteur. Le délimiteur par défaut est
l'espace, ce qui fait que 'splitter' une phrase revient à en renvoyer tous
les
mots dans un tableau.
Join fait l'inverse. Cette fonction reconstitue une chaîne de caractères à
partir des éléments d'un tableau. Elle sépare les différents éléments à
l'aide
d'un délimiteur elle aussi, par défaut l'espace, comme pour Split.
En dehors d'opérations sur des tableaux, d'autant plus pratiques et
rapides à
manipuler que Split ne nécessite aucune boucle pour les remplir, l'intérêt
de
ces deux fonctions est aussi que quasiment n'importe quoi peut leur servir
de
délimiteur, y compris rien du tout (une chaine vide) pour Join.
Exemples de l'utilisation de Split et Join pour manipuler des chaines de
caractères :
'====================== > Sub SplitJoin()
Dim LaChaine$, LeDelimSplit$, LeDelimJoin$
Dim Arr, i&
LaChaine = "toto et tata et zozo et zaza"
LeDelimSplit = "et "
'remplissage du tableau
Arr = Split(LaChaine, LeDelimSplit)
'éléments de la chaîne :
For i = LBound(Arr) To UBound(Arr)
MsgBox Arr(i)
Next i
'reconstitution d'une chaine avec un autre délimiteur
LeDelimJoin = "ou "
MsgBox Join(Arr, LeDelimJoin)
'ou (autre délimiteur)
LeDelimJoin = ""
MsgBox Join(Arr, LeDelimJoin)
'la même chose, en une seule passe
'et avec les délimiteurs 'en dur'
MsgBox Join(Split(LaChaine, "et "), "")
'le troisième élément du tableau délimité
MsgBox Split(LaChaine, "et ")(2)
End Sub
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
a écrit:S = Join(Split(fich.readall, "[1]"))
frédéric, tu nous expliques comment ça marche split et join ?
"Frédéric Sigonneau" a écrit dans le
message de news:Bonsoir,
Si tu travailles avec Excel 2000 ou + récent, la combinaison des
fonctions
Splitet Join peut faire ce que tu souhaites en une seule passe :
'===================== > >>Sub ModifFichierTexte()
Dim fso, fich
Dim Fichier$, S$
Fichier = "D:fsdatas 6OfficeVBAtest.txt" 'à adapter
Set fso = CreateObject("Scripting.FileSystemObject")
Set fich = fso.OpenTextFile(Fichier, 1)
S = Join(Split(fich.readall, "[1]"))
Set fich = fso.OpenTextFile(Fichier, 2)
fich.Write S
fich.Close
End Sub
'===================== > >>
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
David a écrit:Salut,
Peut-on modifier l'intérieur d'un fichier txt via VBA, pour enlever
tous
les3 caractères [1] ?
Je sais que l'on peut trouver cette chaîne de caractère, mais je
voudrais enplus les supprimer toutes car elle m'empêche d'ouvrir le fichier
convenablement (cela a pour effet à l'ouverture, de rajouter une ligne
et dedécaller des cellules), est-ce possible ?
Merci de votre aide.