- ベストアンサー
EXCELメニューのツールにある操作をVBAで行わせたい
- EXCELメニューのツールにある操作をVBAで行う方法を教えてください。
- EXCEL 2003のマクロ(VBA)を使用して、ツールメニューで行われる操作を実行したいです。
- ツールメニューのオプションやブックの共有に関する操作をVBAで実行する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
[DisplayAlerts プロパティ]について調べてみると良いでしょう。 それ以外のコードはマクロ記録がヒントになると思います。 Sub try1() Dim flg As Boolean flg = (MsgBox("読み取り専用推奨?", vbYesNo) = vbYes) With ThisWorkbook Application.DisplayAlerts = False .SaveAs .FullName, ReadOnlyRecommended:=flg Application.DisplayAlerts = True End With End Sub Sub try2() With ThisWorkbook If .MultiUserEditing Then Application.DisplayAlerts = False .ExclusiveAccess Application.DisplayAlerts = True End If End With End Sub
その他の回答 (1)
メニューバーの「ツール」-「マクロ」-「新しいマクロの記録」を行なった後、 Excelのメニューツールにある操作を行なえば、その処理のマクロが作成されるので、 それを参考に調べたり修正してみたりすれば解決につながるのでは?
お礼
読み取り専用については、マクロ記録のコードを参考にコーディングエディット可能なのですが、ブック共有は記録されないのです。 マクロ記録は便利なのですが、初歩的なコードしか生成してくれないので、判定やループ、配列など凝ったコードは己でコーディングしてやらなければならないのです。 ご回答ありがとうございました。
お礼
DisplayAlertsは知っておりました。 vbYesかvbNoを与えることで、メッセージボックスのボタンを制御できるわけですね。 ブック共有は、MultiUserEditingとExclusiveAccessメソッドで制御できるわけですね。 サンプルソースを見て、より理解できました。 どうも、ありがとうございました!