• ベストアンサー

【VBAユーザーフォームで閉じるボタンを表示したくない】

ユーザーフォームの右上閉じるボタン(×)を表示しない方法が見当たりません。 どなたかご存知の方、ご教授願います。 開発言語:Excel2000VBA OS:Windows2000

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

  • ベストアンサー
  • JeanneNet
  • ベストアンサー率48% (100/208)
回答No.2

こんにちは、じゃんぬねっと です。 API 使っても消せないかなぁ。 DeleteMenu で、システムメニューから「閉じる」を消すだけですから。

mari0629
質問者

お礼

じゃんぬねっとさん、回答ありがとうございます。 DeleteMenu(API)で要件どおり実装することができました。 http://www.asahi-net.or.jp/~ei7m-wkt/apitest2.htm どうもありがとうございました。

その他の回答 (1)

  • ta123
  • ベストアンサー率51% (95/186)
回答No.1

おそらく×ボタンを非表示にする方法はないと思います。 当該ユーザフォームのイベントプロシージャ UserForm_QueryCloseを使って処理をキャンセルする代替方法があります。 Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) 'ユーザフォームの×ボタンが押された場合 If CloseMode = vbFormControlMenu Then '処理をキャンセルする Cancel = True End If End Sub ※MsgBoxでクローズできないメッセージを表示するのが親切かもしれません。

mari0629
質問者

お礼

早速の回答をありがとうございます。 VBでは×ボタン表示を制御できたので、VBAでもできるのかなと思っていました。 それらしきプロパティも見当たらなかったので、やはりイベントで拾って動作制御する方法しかないのですね。

関連するQ&A

専門家に質問してみよう