Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

depuis ACCESS, enregistrer un XLS en TXT

3 réponses
Avatar
herve70
Bonjour,

je dois importer un fichier excel qui a un champ date (format
15/10/2008) et un champ heure (format 16:00).
Seulement, Access reconnais mal ce champ heure car il me ram=E8ne les
donn=E9es au format 16:00:00, ce qui donne des jours et non plus des
heures.

Y a-t-il moyen en vba d'ouvrir le fichier excel et de l'enregistrer au
format *.txt ? et de l'importer ensuite automatiquement (l'importation
automatique, je connais)
(pour ne pas avoir de probl=E8me d'importation, je transforme tous les
jours mon fichier excel en texte =E0 la main).

D'avance merci

3 réponses

Avatar
michel chambrillon
Bonjour
Essaie ceci
dans VBE ajoute la reference a microsoft excel xx Library
Sub excel()
'dans VBE ajoute la reference a microsoft excel xx Library

Workbooks.Open Filename:="nom de ton fichier .xls"
ActiveWorkbook.SaveAs Filename:= _
"nom de ton fichier.csv", FileFormat:=xlCSV, _
CreateBackup:úlse
End Sub
@Plus
michel

"herve70" a écrit dans le message de
news:
Bonjour,

je dois importer un fichier excel qui a un champ date (format
15/10/2008) et un champ heure (format 16:00).
Seulement, Access reconnais mal ce champ heure car il me ramène les
données au format 16:00:00, ce qui donne des jours et non plus des
heures.

Y a-t-il moyen en vba d'ouvrir le fichier excel et de l'enregistrer au
format *.txt ? et de l'importer ensuite automatiquement (l'importation
automatique, je connais)
(pour ne pas avoir de problème d'importation, je transforme tous les
jours mon fichier excel en texte à la main).

D'avance merci
Avatar
FFO
Salut herve
Ce bout de code dans un module pour ouvrir et enregistrer un fichier Excel
en fichier Texte :

Public Function Enregistrer() As Boolean
Dim wdApp As Excel.Application
Set wdApp = CreateObject("Excel.Application")
With wdApp
.Workbooks.Open "C:CheminFichier.xls"
.ActiveWorkbook.SaveAs Filename:="C:CheminFichier.txt", FileFormat:= _
xlText, CreateBackup:úlse
.ActiveWorkbook.Close SaveChanges:úlse
End With
wdApp.Application.Quit
End Function

Celà devrait convenir
Dis moi !!!
Avatar
herve70
Bonsoir à tous 2, Michel et FFO.
Les 2 solutions marchent, mais celle de Michel à le désaventage de
laisser en mémoire le fichier *.csv, alors que ta solution, FFO,
fontionne à merveille sans rien retoucher (sauf le nom du fichier,
bien sûr.).
Un grand merci pour cette solution qui me tire bien des épines du pied
et qui aura l'avantage de ne plus avoir à "bidouiller" le fichier
excel.

Encore bravo et merci de votre aide.
Hervé