Bonjour,

Pour automatiser des mises à jour d'une base access, je dois, en VBA, ouvrir un fichier excel, le modifier, puis l'enregistrer en CSV avant de l'importer dans la base.
Si l'ouverture et la modification se passent bien, je n'ai pas réussi à trouver la syntaxe me permettant de sauvegarder en CSV (pour des problèmes de données date excel à incorporer à des champs texte sous Access)

Si j'utilise un Saveas avec extension CSV, lors de l'importation, le fichier se comporte comme un xls, c'est à dire que les champs date passent en erreur

J'ai essayé de passer par un Activeworkbook.saveas, mais ne parviens pas à trouver une syntaxe acceptable

Ci-dessous mon code, avec les 3 essais faits (dont deux en commentaires)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
       nomfichier = fd.SelectedItems(1)
        Set appexcel = CreateObject("Excel.Application")
        Set wbexcel = appexcel.Workbooks.Open(nomfichier)
        appexcel.Visible = True
        '   On efface les ligne du haut
        appexcel.ActiveSheet.Rows("1:6").Delete
        '   On sauve en CSV dans le répertoire TEMP
        wbexcel.ActiveWorkbook.SaveAs FileName:="C:\TEMP\Talentis.csv", FileFormat:=xlCSV, ' Cette ligne passe en erreur de compilation
'        DoCmd.TransferText acExportDelim, , T.Name, "C:\TEMP\Talentis.csv" & wbexcel & ".csv", True 'Cette ligne passe en erreur 424 objet requis        
'        wbexcel.SaveAs "C:\TEMP\Talentis.csv" ' Cette ligne ne donne pas un fichier importable (voir explication au dessus % champs date)
Donc, si quelqu'un avait une idée (sinon, je vais être obligé de charger mon fichier excel dans une table bidon, puis d'exporter cette table en CSV... pas super!)