• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのグループボックス枠線を消す、ボックス数)

エクセルのグループボックスとオプションボタンの枠線を消す方法とは?

このQ&Aのポイント
  • エクセルのグループボックスの枠線を非表示にする方法と、オプションボタンの枠線を消す方法について質問があります。
  • イミディエイトウインドウで「ActiveSheet.GroupBoxes.Visible = False」と入力することで、グループボックスの枠線を非表示にできることがわかりました。
  • しかし、YesNoのオプションボタンをグループ化して上記のコードを実行するとエラーが発生しました。一つずつグループを消していくと61個まで消せましたが、それ以上は消せませんでした。解決策があれば教えてください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

回答したとおりに行っていただければよいだけのことなのですが,それとも一体「何が」変わらないのですか? 二度も同じ事をお話ししたくは無いのですが,デキナイという事なので手順の説明をもう一度繰り返します。 >ちなみにイミディエイトウィンドウに Ctrl+Gでイミディエイトウィンドウを出します。 しかしイミディエイトウィンドウを出す事は既に出来ているはずです。 >for each o in activesheet.checkboxes : o.visible = false : next イミディエイトウィンドウにこの一行を記入します 「ActiveSheet.GroupBoxes.Visible = False」を記入するなんて事はお話ししていません。 >と記入してEnterすることで,回避できます。 上述を記入しEnterすることで実行します。 しかしこの手順も既に「ActiveSheet.GroupBoxes.Visible = False」を記入しEnterして実行できたことで,出来ているはずです。 #それともこういうことを言ってるのですか? この手順を実行することで「ActiveSheet.GroupBoxes.Visible = Falseでエラーになるのを回避できる」という事をお話ししているのではありません。 この手順を実行することで,あなたが行った手順で発生したエラーを起こさずに,グループボックスを全て非表示に出来ますとお話ししています。

melon_007
質問者

お礼

手順は理解できていたのですが、 >for each o in activesheet.checkboxes : o.visible = false : next ではグループボックスの枠線は消えませんでした。 グループボックス枠線を消したかったので、以下に変更することで、 for each o in activesheet.groupboxes : o.visible = false : next 解決いたしました。 本当に、ありがとうございました。 助かりました。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

数に限度があります。単なるエクセルのバグです。(正式な仕様ではなかったと記憶しているので,バグとは言わないのかもしれませんが。) なお,コントロールの種類によって,更に「コントロール(図形)の並べ方」によって,エラーになる数が違います。 また「エラーにならない上限以下」の個数であるにもかかわらず,図形s.visible = false をしても不可視に「ならない」コントロールが発生するような現象も起こります。 ちなみにイミディエイトウィンドウに for each o in activesheet.checkboxes : o.visible = false : next と記入してEnterすることで,回避できます。

melon_007
質問者

補足

早速にありがとうございます。 素人なので見当違いをしているのでしょうか。 下記のように2行書くのでしょうか。 ActiveSheet.GroupBoxes.Visible = False for each o in activesheet.checkboxes : o.visible = false : next しかし、変化はありませんでした。 一行のみでも、変わりませんでした。 for each o in activesheet.checkboxes : o.visible = false : next 今一度、教えていただけると幸いです。 よろしくお願いいたします。