• ベストアンサー

<EXCEL> セルが非表示になったらチェックボックスも非表示にする方法

VBAマクロなどで、ある条件のとき特定のセルを非表示にします。その際、セル上に貼り付けてあるチェックボックスも一緒に非表示にしたいと思ってます。 現状ではセルだけを非表示(高さを0にする)処理をしているのでチェックボックスはそのまま残ってしまい、表示になった箇所でチェックボックスが折り重なるように表示されて見苦しいのです。 自分で考えた場合、対策としてはVBAマクロでセルを非表示にする際にするしかない気がするのですが、他に良い方法はあるでしょうか? また、VBAマクロで以外にあるセルが非表示になった場合にそのセル上に貼り付けたチェックボックスなどの部品を非表示にする方法はあるでしょうか? 部品はコントロールを使ってます。(フォームではありません) ご教示願います。

  • Yupa3
  • お礼率81% (91/112)

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

セルを表示させたくない理由はわかりませんが、Visible 属性でシェイプの表示操作が可能です。 ActiveSheet.Shapes("CheckBox2").Visible = False

Yupa3
質問者

お礼

ありがとうございます。 やはりこの方向で対応することになるでしょうね。

その他の回答 (2)

noname#123709
noname#123709
回答No.3

該当セルの・・ということなら各チェックボックスの名前をセルのROWに 合せて、変数を使って処理してはどうでしょうか? ActiveSheet.Shapes("CheckBox" & i).Visible = False

Yupa3
質問者

お礼

VBAで組むならばこのような方法がベターでしょうね。ありがとうございました。

  • masa_019
  • ベストアンサー率61% (121/197)
回答No.2

デザインモードにしてチェックボックスを選択した状態で、 プロパティウインドウを表示させると Placementというプロパティがあります。 そのプロパティの設定値を1にしてみてはどうでしょう?

Yupa3
質問者

補足

ご回答ありがとうございます。 おそらくその設定は「フォーム」のチェックボックスに対してしかできないと思われます。 その後自分でも調べてみたのですが、「フォーム」のチェックボックスであれば、左クリックして「コントロールの書式設 定」を選択→「プロパティ」タブを選択→「オブジェクトの位置関係」を「セル に合わせて移動やサイズ変更をする」とすることで特にVBAで書かなくても背後のセルサイズ変更や非表示などに合わせてチェックボックス地震が非表示になることがわかりました。 場合によってはチェックボックスを全て「フォーム」に切り替えることも検討してみようと思います。 ありがとうございました。

関連するQ&A

  • エクセルのチェックボックスで文字の表示・非表示

    エクセルのチェックボックス(フォームのコントロール)を使い特定のセルに文字を表示・非表示させたいのですが、簡単な方法はありますか? チェック時にセル内に文字を表示してチェックを外すとセルを空白にしたいのです。よろしくお願いします。

  • チェックボックスの数をセルの数と連動させる方法

    VBA初心者です。 特定のセルに表示される数を読み取り、表示するチェックボックスの数と連動させたいのですが、 どうしたらよいか分かりません。 ※現状は。。 チェックボックスは必ず1つは表示させるため、 チェックボックスを増やす方法はFor ~ NEXTを使い、コピー&ペーストで、できるのでは?と思っているのですが。。。 セルに表示される数だけ繰り返しをさせる方法が分かりません。。。。 もしアイディアがありましたら、何卒よろしくお願いいたします。

  • エクセルのフォームのチェックボックスについて

    エクセルのフォームのチェックボックスについて あるセルにフォームのチェックボックスを付け、 そのセルに、true・falseの条件設定をしました。 その設定を利用して、条件式書式の設定で、 trueの時にとなりのセルを赤にするようにしました。 以上のような行が1500行あります。 1つ1つ設定するのが困難のため、 マクロが使えるフォームのチェックボックスを使用しようと試みております。 しかし、マクロ内のVBAの記述方法が解りません。(1行だけなら解ります) ご存知の方がおられましたら教えてください。 よろしくお願いいたします。

  • エクセルにて、チェックボックスの表示・非表示

    エクセルにて、コントロールツールのチェックボックスの表示・非表示をセルの入力・未入力で切り替えたいのですが、VBAはどう組んだらしたらよいでしょうか?exel2003です。よろしくお願いいたします。

  • Excelのチェックボックスについて教えてください

    Excel2003使用者です。 今顧客リストを作成しているのですが、 A列にフォームでチェックボックスを入れていて、簡単にはこんな感じになっています。    A       B    C   D  ・・・ 1 チェックボックス 顧客名 部署 住所 ・・・ 営業が訪問した先のチェックボックスにチェックを入れるようになっています。 これをオートフィルタ機能で、チェックをつけたところとつけてないところでフィルタをかけたいのですが、 全て「空白セル」としてフィルタがかかりません。 またオートフィルタをかけるとチェックボックスが寄ってしまいます。 フォームではダメなのかと思って、コントロールツールボックスでチェックボックスを作成したのですが、 それもダメでした。 どなたか解決方法を教えていただけないでしょうか。 オートフィルタでチェックボックスにチェックしたものだけを表示させることはできないのでしょうか。 もしマクロを組まないといけないのでしたら、マクロ初心者なため、 出来ればコードも教えていただきたく、 また、オートフィルタをかけた際にチェックボックスが移動してしまうことも解決したいので、 その点についても教えていただけると幸いです。 お手数ですが、宜しくお願い致します。

  • セルの値をテキストボックスに表示したい

    excelマクロ初心者です。教えてください。 <やりたいこと> 選択したセルと同じ行のうち特定の列のセルの値をフォームの テキストボックスに表示し、そのフォーム上で表示したテキスト ボックスの値をコマンドボタンでコピーしたい。 また、もうひとうつのコマンドボタンをおすと選択したセルと 同じ行の別のセルに"完了"と入力できるようにしたい。

  • Excelのチェックボックスの有無で複数セルの表示を○に変えたい

    Excelのチェックボックスのチェックを付けて、複数個所の表示を変えたいと考えています。 チェックボックスにチェックをつけたら、複数のセルに○が表示されるようにしたいのですが、設定の仕方が分かりません。 どなたか教えてください。 (現在一つのセルにだけ○を表示させる事は出来ています) 【現在】 (1)チェックボックス「1」を配置 (2)以下の設定。 コントロールの書式設定→コントロールタブ選択。→リンクするセルでa1を指定→ok ⇒チェックボックス操作で、a1にtrue・falseが表示されている。 (4)b1に数式を入力する。=IF(A1=TRUE,"○","ー") (5)チェックが入った場合はb1に○が表示されている。 【やりたい事】 (1)チェックボックス「1」にチェックが入った場合、b1,d1,f1,h1,j1,l1,等の複数セルに○を表示させたい (2)チェックボックス「2」、を同様に作成し、チェックを入れた場合、 b1,d1,のセルに○を表示させたい。 (チェックボックス「1」にチェックが入ってない場合でも「2」にチェックが入れば、○を表示させたい)

  • Excel2000のコントロール(チェックボックス)のプロパティについて

    ワークシート上にチェックボックス(ActiveXではなく[フォーム]ツールバーにあるチェックボックス)をおいたのですが、右クリック→[コントロールの書式設定]の[プロパティ]タブの項目で、[セルに合わせて移動やサイズ変更をする]が非表示になって、ラジオボタンが選択できません。データの並び替えのときに、セルといっしょにチェックボックスも移動したいのですが、どうしてでしょうか?

  • エクセル マクロ フォームのチェックボックス

    エクセルのフォームのチェックボックスで【On】にした際に 「コントロールの書式設定」にある「リンクするセル」のロックをしたいのですが マクロで実現する際、どのようなにできるのでしょうか? また、フォームのチェックボックスで【Off】にした際に、「リンクするセル」のロックの解除のしたいです。 初心者で下記を記述しましたが、チェックボックスが多いため、すべてのチェックボックスに登録するのが時間がかかるのあで、教授お願いします。 Cells.Locked = False ActiveSheet.Protect userinterfaceonly:=True ActiveSheet.Range("AY29").Locked = True

  • Wordの「レ」チェックボックス、セキュリティに依存しない方法

    Wordでチェックボックスを作っています。 フォームで作成したら×ではわかりにくいらしく、「レ」のチェックで表示するようにと言われ、 コントロールツールボックスのチェックボックスに変更しました。 ところが、会社にあるパソコンの多くが、マクロのセキュリティレベルが「高」になっており、そのままでは使うことが出来ません。 また、説明してもわかってもらうこともできません。 Excelのフォームのチェックボックスのようにマクロのセキュリティレベルに関係ない「レ」のチェックができる、チェックボックスの設定がしたいのですが、可能でしょうか? 可能ならばやり方を教えてください。 よろしくお願いします。

専門家に質問してみよう