none
VB2008からaccessのマクロを実行する RRS feed

  • 質問

  • VB2008で、ACCESSのDBの型付きのデータセットを作成しレコードの追加を行ったところ非常に時間がかかります。別方法として、CSVに書き込んでACCESSからマクロでCSVを読み込んで関連テーブルにレコードを追加すると相当に早くなりました。

    今は手動でマクロを実行しているのですが、できるならCSVへのレコード出力後、VB2008からアクセスのレコード更新マクロを実行できればベストです。そこで、①VB2008からACCESSのマクロを実行する方法、②レコード書き込みが完全に終了してから、マクロが実行されるようにする方法を知りたいのですが、どなたかご教示ください。

    2010年3月28日 14:26

回答

  • マクロの実行は以下が参考になると思います。

    Visual Basic .NET からオートメーションを使用して Office マクロを実行する方法
    http://support.microsoft.com/kb/306682/ja

    また、レコードの書き込み完了後のタイミングについては、Disposeメソッドを実行した後であれば大丈夫だと思います。具体的にはusingステートメントを使ってそのブロック内で書き出し、そのブロックを抜けた後であれば大丈夫だと思います。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    • 回答としてマーク matushiro97 2010年3月30日 7:51
    2010年3月28日 15:49
    モデレータ

すべての返信

  • マクロの実行は以下が参考になると思います。

    Visual Basic .NET からオートメーションを使用して Office マクロを実行する方法
    http://support.microsoft.com/kb/306682/ja

    また、レコードの書き込み完了後のタイミングについては、Disposeメソッドを実行した後であれば大丈夫だと思います。具体的にはusingステートメントを使ってそのブロック内で書き出し、そのブロックを抜けた後であれば大丈夫だと思います。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    • 回答としてマーク matushiro97 2010年3月30日 7:51
    2010年3月28日 15:49
    モデレータ
  • trapemiya様

    うまくいきました。有難うございました。

    2010年3月30日 7:52