J'ai un problème d'ouverture de fichier qui ne me parait pas logique.
Pour ouvrir un fichier 'csv' manuellement avec Excel, pas de problème, le
format est proposé dans les filtres comme du txt. Mais quand je l'ouvre avec
une macro, le fichier n'est plus reconnu de la même façon et j'obtiens
différents résultats, mais aucun correspondant à une ouverture manuelle.
J'ai essayé les commandes
OPEN
OPEN avec format :=4
OPEN avec format :=6 et Delimiter :=";"
J'ai aussi essayé 'OPENTEXT' mais je n'ai pas trouvé les bons arguments.
Nota : J'ai supprimé le filtre dans mes lignes de code sur la boite de
dialogue, mais sans résultat.
Nous avons aussi fait des essais avec un collegue avec un de ces fichiers
csv qui n'avait aucun rapport avec mes fichiers. Même constat.
Voici les quelques lignes de code en question, si quelqu'un avait la bonté
de m'éclairer de ses lumières.
D'avance, un grand merci.
Sub ouverture()
'définition de la boite de dialogue
With Application.FileDialog(msoFileDialogOpen)
'definition du titre
.Title = "Selection du Fichier 'Chronopost'"
'option « choix multiple »
.AllowMultiSelect = True
'filtre sur les fichiers « csv »
.Filters.Add "Fichiers Chronopost", "*.csv", 1
'affichage de la boite
.Show
'ouverture pour chaque fichier sélectionné (max 2)
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
Brunos
Bonjour Pan got, Je pense qu'il faut que tu ajoutes l'argument local après Open. Workbooks.Open Filename:=MonFichier, local:=True Ca marche pour moi en version Excel 2007.
La raison est dans l'aide : - True enregistre les fichiers en fonction de la langue de Microsoft Excel (y compris les paramètres du Panneau de configuration). - False (valeur par défaut) enregistre les fichiers en fonction de la langue deVBA (qui est généralement l'anglais des États-Unis...)
Or les fichiers csv sont séparés par des virgules aux US, et généralement par des points virgules en France.
Brunos
"PAN GOT" a écrit dans le message de news: %
Bonjour,
J'ai un problème d'ouverture de fichier qui ne me parait pas logique.
Pour ouvrir un fichier 'csv' manuellement avec Excel, pas de problème, le format est proposé dans les filtres comme du txt. Mais quand je l'ouvre avec une macro, le fichier n'est plus reconnu de la même façon et j'obtiens différents résultats, mais aucun correspondant à une ouverture manuelle.
J'ai essayé les commandes
OPEN
OPEN avec format :=4
OPEN avec format :=6 et Delimiter :=";"
J'ai aussi essayé 'OPENTEXT' mais je n'ai pas trouvé les bons arguments.
Nota : J'ai supprimé le filtre dans mes lignes de code sur la boite de dialogue, mais sans résultat.
Nous avons aussi fait des essais avec un collegue avec un de ces fichiers csv qui n'avait aucun rapport avec mes fichiers. Même constat.
Voici les quelques lignes de code en question, si quelqu'un avait la bonté de m'éclairer de ses lumières.
D'avance, un grand merci.
Sub ouverture()
'définition de la boite de dialogue
With Application.FileDialog(msoFileDialogOpen)
'definition du titre
.Title = "Selection du Fichier 'Chronopost'"
'option « choix multiple »
.AllowMultiSelect = True
'filtre sur les fichiers « csv »
.Filters.Add "Fichiers Chronopost", "*.csv", 1
'affichage de la boite
.Show
'ouverture pour chaque fichier sélectionné (max 2)
MsgBox "Attention: seuls les 2 premiers fichiers sont ouverts."
End Select
Next lngCount
End With
End sub
Bonjour Pan got,
Je pense qu'il faut que tu ajoutes l'argument local après Open.
Workbooks.Open Filename:=MonFichier, local:=True
Ca marche pour moi en version Excel 2007.
La raison est dans l'aide :
- True enregistre les fichiers en fonction de la langue de Microsoft Excel
(y compris les paramètres du Panneau de configuration).
- False (valeur par défaut) enregistre les fichiers en fonction de la langue
deVBA (qui est généralement l'anglais des États-Unis...)
Or les fichiers csv sont séparés par des virgules aux US, et généralement
par des points virgules en France.
Brunos
"PAN GOT" <nospam-gret.angot@wanadoo.fr> a écrit dans le message de news:
%23Qj5FbqVIHA.4476@TK2MSFTNGP06.phx.gbl...
Bonjour,
J'ai un problème d'ouverture de fichier qui ne me parait pas logique.
Pour ouvrir un fichier 'csv' manuellement avec Excel, pas de problème, le
format est proposé dans les filtres comme du txt. Mais quand je l'ouvre
avec une macro, le fichier n'est plus reconnu de la même façon et
j'obtiens différents résultats, mais aucun correspondant à une ouverture
manuelle.
J'ai essayé les commandes
OPEN
OPEN avec format :=4
OPEN avec format :=6 et Delimiter :=";"
J'ai aussi essayé 'OPENTEXT' mais je n'ai pas trouvé les bons arguments.
Nota : J'ai supprimé le filtre dans mes lignes de code sur la boite de
dialogue, mais sans résultat.
Nous avons aussi fait des essais avec un collegue avec un de ces fichiers
csv qui n'avait aucun rapport avec mes fichiers. Même constat.
Voici les quelques lignes de code en question, si quelqu'un avait la bonté
de m'éclairer de ses lumières.
D'avance, un grand merci.
Sub ouverture()
'définition de la boite de dialogue
With Application.FileDialog(msoFileDialogOpen)
'definition du titre
.Title = "Selection du Fichier 'Chronopost'"
'option « choix multiple »
.AllowMultiSelect = True
'filtre sur les fichiers « csv »
.Filters.Add "Fichiers Chronopost", "*.csv", 1
'affichage de la boite
.Show
'ouverture pour chaque fichier sélectionné (max 2)
Bonjour Pan got, Je pense qu'il faut que tu ajoutes l'argument local après Open. Workbooks.Open Filename:=MonFichier, local:=True Ca marche pour moi en version Excel 2007.
La raison est dans l'aide : - True enregistre les fichiers en fonction de la langue de Microsoft Excel (y compris les paramètres du Panneau de configuration). - False (valeur par défaut) enregistre les fichiers en fonction de la langue deVBA (qui est généralement l'anglais des États-Unis...)
Or les fichiers csv sont séparés par des virgules aux US, et généralement par des points virgules en France.
Brunos
"PAN GOT" a écrit dans le message de news: %
Bonjour,
J'ai un problème d'ouverture de fichier qui ne me parait pas logique.
Pour ouvrir un fichier 'csv' manuellement avec Excel, pas de problème, le format est proposé dans les filtres comme du txt. Mais quand je l'ouvre avec une macro, le fichier n'est plus reconnu de la même façon et j'obtiens différents résultats, mais aucun correspondant à une ouverture manuelle.
J'ai essayé les commandes
OPEN
OPEN avec format :=4
OPEN avec format :=6 et Delimiter :=";"
J'ai aussi essayé 'OPENTEXT' mais je n'ai pas trouvé les bons arguments.
Nota : J'ai supprimé le filtre dans mes lignes de code sur la boite de dialogue, mais sans résultat.
Nous avons aussi fait des essais avec un collegue avec un de ces fichiers csv qui n'avait aucun rapport avec mes fichiers. Même constat.
Voici les quelques lignes de code en question, si quelqu'un avait la bonté de m'éclairer de ses lumières.
D'avance, un grand merci.
Sub ouverture()
'définition de la boite de dialogue
With Application.FileDialog(msoFileDialogOpen)
'definition du titre
.Title = "Selection du Fichier 'Chronopost'"
'option « choix multiple »
.AllowMultiSelect = True
'filtre sur les fichiers « csv »
.Filters.Add "Fichiers Chronopost", "*.csv", 1
'affichage de la boite
.Show
'ouverture pour chaque fichier sélectionné (max 2)