1

csv ファイルにリンクされたテーブルの問題に苦しんでいます。次のようなVBAコードでアタッチしました:

With CurrentDb
  Dim ts As DAO.TableDef
  Set ts = .CreateTableDef("cli")
  ts.SourceTableName = "CLI1.csv"
  ts.Connect = "Text;DSN=CLI1 Spec;FMT=Delimited;HDR=NO;IMEX=2;CharacterSet=850;DATABASE=C:\Users\user1\Desktop"
  .TableDefs.Append ts
  .TableDefs.Refresh
End With

これを手動で呼び出すと、テーブルが正しくアタッチされます。これが autoexec マクロ内で自動的に呼び出されると、テキスト ファイル仕様 "CLI1 Spec" が存在しないというエラー 3625 が表示されます。

おそらく、autoexec マクロを実行するときにコンテキストが完全に初期化されていないためです...しかし、それを機能させるにはどうすればよいですか?

4

1 に答える 1

2

試す:

With CurrentDb
  Dim ts As DAO.TableDef
  Set ts = .CreateTableDef("cli")
  ts.SourceTableName = "CLI1.csv"
  ts.Connect = "Text;FMT=Delimited;HDR=NO;IMEX=2;CharacterSet=850;DATABASE=C:\Users\user1\Desktop"
  .TableDefs.Append ts
  .TableDefs.Refresh
End With

それが適切でない場合は、schema.ini ファイルと SQL を使用するのはそれほど難しくありません。たとえば、次のようになります。TransferText エラーの処理

于 2013-02-08T19:27:02.707 に答える