Access2000のマクロを動かすには?

解決


Air  2007-11-19 04:30:11  No: 28539

WindowsXP Pro、Delphi7 Proの環境で、Access2000のマクロを動かす
プログラムを作成したいと思っています。
やり方が分からないのですが、どなたか御教授頂けないでしょうか?


さなみ  2007-11-20 08:42:46  No: 28540

OLEオートメーションが使えると思います。

以前はBorlandの公式サイトにやり方が書いてあったと思うのですが、みつからないです。

Excelの例ですが。
http://www.wwlnk.com/boheme/delphi/vbtodel/daf0320.html
http://www.wwlnk.com/boheme/delphi/vbtodel/daf0160.html
を参考にしてください。

こちらにOLEオートメーションを使って、ExcelからAccessのマクロを呼ぶサンプルがあります。
http://www.ken3.org/vba/backno/vba016.html

Runというメソッドを呼べばよいみたいです。


Air  2007-11-21 16:49:47  No: 28541

さなみさん、ありがとうございます。

昨日、TAccessApplicationを使用して動かせるところまでは
出来上がりました。
参考までに以下に貼り付けます。

procedure AccessAtach;
var
  AccessApp : TAccessApplication;
begin
  AccessApp := TAccessApplication.Create(nil);
  try
    try
      AccessApp.OpenCurrentDatabase('C:\test\test.mdb',True);
      AccessApp.DoCmd.RunMacro('マクロ1',1,'');
      AccessApp.CloseCurrentDatabase;
    Except
      on e:Exception do begin
        ShowMessage(e.Message);
      end;
    end;
  finally
    AccessApp.Free;
  end;

end;


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加