Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier
.csv.
Le fichier est propre, les séparateurs sont des ";".
Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et
que je fais
Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la
Macro,
le travail se fait, mais je perds des données par rapport à la première
méthode.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Nova,
Si ta version d'excel date d'avant excel 2002, tu peux utiliser ceci pour ouvrir un fichier csv par macro. Si tu double-cliques dans l'explorateur Windows sur un fichier .csv, tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle "local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'----------------------------------------- Sub CSVOpener() 'd'après P. Penet, mpfe Dim wb As Workbook, NomFich
With Application NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt") If NomFich = False Then Exit Sub Set wb = .Workbooks.Open(NomFich) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True End With
End Sub '-----------------------------------------
Salutations!
"Nova" a écrit dans le message de news: kVQzf.1669$ Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier .csv. Le fichier est propre, les séparateurs sont des ";". Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et que je fais Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la Macro, le travail se fait, mais je perds des données par rapport à la première méthode.
J'ai du rater quelquechose, mais quoi ?
Nova
Bonjour Nova,
Si ta version d'excel date d'avant excel 2002, tu peux utiliser
ceci pour ouvrir un fichier csv par macro.
Si tu double-cliques dans l'explorateur Windows sur un fichier .csv,
tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des
paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle
"local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'-----------------------------------------
Sub CSVOpener()
'd'après P. Penet, mpfe
Dim wb As Workbook, NomFich
With Application
NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt")
If NomFich = False Then Exit Sub
Set wb = .Workbooks.Open(NomFich)
wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True
End With
End Sub
'-----------------------------------------
Salutations!
"Nova" <andre.fournier@chello.fr> a écrit dans le message de news: kVQzf.1669$Zp4.605@news.chello.at...
Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier
.csv.
Le fichier est propre, les séparateurs sont des ";".
Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et
que je fais
Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la
Macro,
le travail se fait, mais je perds des données par rapport à la première
méthode.
Si ta version d'excel date d'avant excel 2002, tu peux utiliser ceci pour ouvrir un fichier csv par macro. Si tu double-cliques dans l'explorateur Windows sur un fichier .csv, tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle "local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'----------------------------------------- Sub CSVOpener() 'd'après P. Penet, mpfe Dim wb As Workbook, NomFich
With Application NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt") If NomFich = False Then Exit Sub Set wb = .Workbooks.Open(NomFich) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True End With
End Sub '-----------------------------------------
Salutations!
"Nova" a écrit dans le message de news: kVQzf.1669$ Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier .csv. Le fichier est propre, les séparateurs sont des ";". Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et que je fais Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la Macro, le travail se fait, mais je perds des données par rapport à la première méthode.
J'ai du rater quelquechose, mais quoi ?
Nova
Nova
Merci, ça marche.
"michdenis" a écrit dans le message de news:
Bonjour Nova,
Si ta version d'excel date d'avant excel 2002, tu peux utiliser ceci pour ouvrir un fichier csv par macro. Si tu double-cliques dans l'explorateur Windows sur un fichier .csv, tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle "local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'----------------------------------------- Sub CSVOpener() 'd'après P. Penet, mpfe Dim wb As Workbook, NomFich
With Application NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt") If NomFich = False Then Exit Sub Set wb = .Workbooks.Open(NomFich) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True End With
End Sub '-----------------------------------------
Salutations!
"Nova" a écrit dans le message de news: kVQzf.1669$ Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier .csv. Le fichier est propre, les séparateurs sont des ";". Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et que je fais Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la Macro, le travail se fait, mais je perds des données par rapport à la première méthode.
J'ai du rater quelquechose, mais quoi ?
Nova
Merci, ça marche.
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
ulH9f0SHGHA.1032@TK2MSFTNGP11.phx.gbl...
Bonjour Nova,
Si ta version d'excel date d'avant excel 2002, tu peux utiliser
ceci pour ouvrir un fichier csv par macro.
Si tu double-cliques dans l'explorateur Windows sur un fichier .csv,
tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des
paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle
"local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'-----------------------------------------
Sub CSVOpener()
'd'après P. Penet, mpfe
Dim wb As Workbook, NomFich
With Application
NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt")
If NomFich = False Then Exit Sub
Set wb = .Workbooks.Open(NomFich)
wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True
End With
End Sub
'-----------------------------------------
Salutations!
"Nova" <andre.fournier@chello.fr> a écrit dans le message de news:
kVQzf.1669$Zp4.605@news.chello.at...
Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier
.csv.
Le fichier est propre, les séparateurs sont des ";".
Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et
que je fais
Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance
la
Macro,
le travail se fait, mais je perds des données par rapport à la première
méthode.
Si ta version d'excel date d'avant excel 2002, tu peux utiliser ceci pour ouvrir un fichier csv par macro. Si tu double-cliques dans l'explorateur Windows sur un fichier .csv, tu continueras d'avoir la problématique que tu décris.
Si ta version Excel est 2002 ou 2003, regarde dans l'aide, un des paramêtres de la méthode "Open" de l'objet "Workbooks" s'appelle "local" et tu n'as seulement qu'à le mettre à true... comme ceci :
Workbooks.open Filename:="c:Mon fichier.xls", Local :=True
'----------------------------------------- Sub CSVOpener() 'd'après P. Penet, mpfe Dim wb As Workbook, NomFich
With Application NomFich = Application.GetOpenFilename("Fichiers texte,*.csv;*.txt") If NomFich = False Then Exit Sub Set wb = .Workbooks.Open(NomFich) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True End With
End Sub '-----------------------------------------
Salutations!
"Nova" a écrit dans le message de news: kVQzf.1669$ Bonjour,
Besoin d'une explication et si possible d'une solution.
Je récupère un tableau diffusé sous Intranet sous le forme d'un fichier .csv. Le fichier est propre, les séparateurs sont des ";". Je dois ensuite faire des tris et des mises en forme.
Si j'ourvre mon .csv directement dans Excel, Fichier, Ouvrir, *.csv, et que je fais Données, Convertir, Format fixe, Séparateur ";", tout baigne.
Maintenant si j'enregistre cette séquence dans une Macro, et que je lance la Macro, le travail se fait, mais je perds des données par rapport à la première méthode.