• ベストアンサー

Excelファイルのマクロによる排他制御

A.xlsというExcelファイルの内容を更新するのですが。 更新しにいくのは、複数のExcelのマクロで作成したツールです。 その複数のツールから同時にA.xlsの更新にいくと当然タイミングによって更新内容が上書き等され壊れてしまいます。 そこで、お互いのツールで排他制御を行おうと思っているのですが、A.xlsを開くopen文での記述が解りません。 どなたか教えていただけないでしょうか。 使用している構文は、こんな感じです。 Workbooks.Open Filename:="A.xls" on errorで重複openのエラーになるかと思ったのですが、エラーになってくれず、重複エラーを検知できません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • asahina02
  • ベストアンサー率47% (95/202)
回答No.1

MSのヘルプでこんなのがありました。参考URLをご覧ください。 一度、書込み用の通常ファイルとしてオープンし、 OKだったらエクセルとしてオープンするという方法です。 ※ページはエクセル97と書いてありますが、  内容的にどのバージョンでも大丈夫だと思います。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;408062
sortaro
質問者

お礼

助かりました! 手動でファイルオープンする時は、Officeが勝手に制御してくれるのですが、マクロ同士で排他制御する方法が分からなくて困っていたところでした。 ありがとうございました。

関連するQ&A