• ベストアンサー

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

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

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

  • ベストアンサー
  • yokomaya
  • ベストアンサー率40% (147/366)
回答No.1

ワークセルを用いて条件書式を設定する方法を示します。 仮にB1をワークセルとしてA1の表示を非表示にするケースでは まずコントロールのチェックボックスを配置してデザインモードのプロパティでCheckBox1のLinkedCellにB1を設定します。 次にデザインモードを解除してA1セルを選択して、書式⇒条件付書式で 数式が=$B$1=TRUEとしてフォントの色を白にします。 以上でチェックボックスのONOFFで表示非表示が切り替えできると思います。

bastok
質問者

お礼

シンプルな方法を探していたのでとても助かりました。この方法で試してみたいと思います。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

エクセルを終了し、電源を切る場合もあると思うので、ファイルへ一時記録する必要があると思います。 下記ではC1,D1の2つのセルを消したり戻したりします。 Private Sub CheckBox1_Click() If CheckBox1.Value = False Then MsgBox "復元" Open "taihi.csv" For Input As #1 Line Input #1, s MsgBox s ss = Split(s, ",") Worksheets("Sheet1").Cells(1, "C") = ss(0) Worksheets("Sheet1").Cells(1, "D") = ss(1) Close #1 Else MsgBox "退避" a1 = Worksheets("Sheet1").Cells(1, "C") a2 = Worksheets("Sheet1").Cells(1, "D") Open "taihi.csv" For Output As #1 Print #1, a1 & "," & a2 Close #1 Worksheets("Sheet1").Cells(1, "C") = "" Worksheets("Sheet1").Cells(1, "D") = "" End If End Sub ただ目的が機密保持なのか何か良くわからず、とりあえず1例を作ってみました。上記は機密保持には向いてないと思いますが。

bastok
質問者

お礼

詳しく教えていただきありがとうございました。目的は機密保持ではありませんので教えていただいた方法を試してみたいと思います。

関連するQ&A

専門家に質問してみよう