J'ai hérité d'une énorme base de données MS Access volumineuse et je suis affecté pour résoudre un problème. Le problème est le suivant ...Fonction Microsoft Access TransferText: problème avec la page de codes
Le système A exporte ses données dans un fichier .txt délimité par un pipeline. Les fichiers ont des caractères spéciaux qui fonctionnent correctement, par exemple la valeur "Müller" s'affiche lors de l'ouverture de ce fichier dans le bloc-notes ou Excel.
Ensuite, la base de données Access importe le fichier .txt et stocke le résultat dans une table interne des employés. Le champ de nom est de type "mémo". La méthode pour importer des données à partir du fichier txt à MS Access est la suivante:
Call DoCmd.TransferText(acImportDelim, _
"tblEmployees", _
"tblEmployees", _
me.txtImportFile, _
True)
Après avoir exécuté cette importation et l'affichage de la table des employés, j'ai remarqué que les noms avec des caractères spéciaux sont foiré. "Müller" devient "Mùller" par exemple. J'ai étudié un peu d'aide en ligne et a trouvé que peut inclure un paramètre « codepage » dans l'appel TransferText, donc je l'ai mis à 65001 (qui est appearantly la page de code pour unicode):
Call DoCmd.TransferText(acImportDelim, _
"tblEmployees", _
"tblEmployees", _
me.txtImportFile, _
True, _
, _
65001)
Maintenant que je l'ai couru la importer à nouveau le script, je ne vois aucune différence, les caractères spéciaux sont encore mal renseignés. Je suis à bout de souffle et j'espère que l'un de vous aura des conseils sur la façon de résoudre ce problème ...