⚡6★7💎9🔮 100人に1人
セルの文字を○で囲む表示/非表示 ── 名前の管理+図形(VBA不要)
💡 やりたいこと
処理票のセルに最初から入っている「男」「女」「昭和」「平成」「令和」の文字を、入力値に応じて図形の○で囲んだように見せたい。VBA不要で。
先に完成形を見る
入力シートで「男」「平成」を選ぶと、処理票がこうなります。
| 性別 | 男 ・ 女 |
| 生年月日 | 昭和 ・ 平成 ・ 令和 5年 3月 15日 |
入力を「女」「令和」に変えると…
| 性別 | 男 ・ 女 |
| 生年月日 | 昭和 ・ 平成 ・ 令和 2年 8月 1日 |
○が自動で移動。セルの文字自体は変わらない。
📜 このテクニックについて
「図形の数式バーにセル参照を入力できる」仕様は Excel 97 から存在。知っている人は体感100人に1人。セル内のIFだと大きさや位置の自由が利かないため、図形でセルの文字の上に○を重ねるこの手法が有効です。
「図形の数式バーにセル参照を入力できる」仕様は Excel 97 から存在。知っている人は体感100人に1人。セル内のIFだと大きさや位置の自由が利かないため、図形でセルの文字の上に○を重ねるこの手法が有効です。
「セルの上に図形が乗る」仕組み ── 3段階で理解
① セルだけの状態
処理票のセルに「男」「女」が固定で入っている。まだ図形は何もない。
性別:
男
・
女
B5セル =「男」、D5セル =「女」(固定テキスト)
▼
② 図形をセルの文字の上に重ねて置く
各文字の上に楕円(またはテキストボックス)を配置。この時点では透明。青い点線が図形の位置。
性別:
男
・
女
「男」の上の図形 → 数式バーに =丸男
「女」の上の図形 → 数式バーに =丸女
「女」の上の図形 → 数式バーに =丸女
▼
③ 入力シートで「男」を選ぶと…
性別:
男
・
女
「男」だけが○で囲まれた!「女」の上の図形は透明で見えない。
生年月日欄もまったく同じ仕組みです。
① セルだけ
生年月日:
昭和・
平成・
令和
▼
② 図形を重ねる
生年月日:
昭和・
平成・
令和
▼
③ 「平成」を選ぶと…
生年月日:
昭和・
平成・
令和
「平成」だけ○で囲まれた!
「入力」シートの中身
入力
処理票
| A | B | … | H | I | |
|---|---|---|---|---|---|
| 1 | 氏名 | 山田太郎 | ONスイッチ | OFFスイッチ | |
| 2 | 性別 | 男 | ○ | (空白) | |
| 3 | 元号 | 平成 | |||
| 4 | 年 | 5 | |||
| 5 | 月 | 3 | |||
| 6 | 日 | 15 |
B2:性別を入力 → ○の位置が決まる / B3:元号を入力 → ○の位置が決まる
H2:「○」入力済み(ONスイッチ) / I2:空白(OFFスイッチ)── 全名前で共有
H2:「○」入力済み(ONスイッチ) / I2:空白(OFFスイッチ)── 全名前で共有
名前の管理に登録するIF式
=IF('入力'!$B$2="男", '入力'!$H$2, '入力'!$I$2)
'入力'!$B$2="男"→「入力」シートの B2 が「男」か?
'入力'!$H$2→YESなら H2(= ○)→ 図形に○が出る
'入力'!$I$2→NOなら I2(= 空白)→ 図形が透明のまま
式がシートのどこを見ているか
入力
| A | B | … | H | I | |
|---|---|---|---|---|---|
| 2 | 性別 | 男 $B$2 条件 |
○ $H$2 YES |
空白 $I$2 NO |
登録する名前の一覧
▼ 性別欄
| 名前 | 参照範囲 | 処理票で○がつく場所 |
|---|---|---|
| 丸男 | =IF('入力'!$B$2="男",'入力'!$H$2,'入力'!$I$2) | B5セル「男」の上の図形 |
| 丸女 | =IF('入力'!$B$2="女",'入力'!$H$2,'入力'!$I$2) | D5セル「女」の上の図形 |
▼ 生年月日欄
| 名前 | 参照範囲 | 処理票で○がつく場所 |
|---|---|---|
| 丸昭和 | =IF('入力'!$B$3="昭和",'入力'!$H$2,'入力'!$I$2) | B7セル「昭和」の上の図形 |
| 丸平成 | =IF('入力'!$B$3="平成",'入力'!$H$2,'入力'!$I$2) | D7セル「平成」の上の図形 |
| 丸令和 | =IF('入力'!$B$3="令和",'入力'!$H$2,'入力'!$I$2) | F7セル「令和」の上の図形 |
作成手順
STEP 1
「入力」シートの H2 に「○」、I2 は空白にする
STEP 2
H2・I2 の周辺を白で隠す
G~J列あたりを広めに選択 → 塗りつぶし白・フォント色白・罫線なし
G~J列あたりを広めに選択 → 塗りつぶし白・フォント色白・罫線なし
STEP 3
名前の管理で上の一覧の通り名前を登録する
数式タブ → 名前の管理 → 新規作成
STEP 4
「処理票」シートのセルの文字の上に図形を配置する
楕円またはテキストボックスを「男」「女」「昭和」「平成」「令和」の各セルの上にぴったり重ねる。
楕円またはテキストボックスを「男」「女」「昭和」「平成」「令和」の各セルの上にぴったり重ねる。
男
← セルの文字の上に図形を重ねる
STEP 5
図形を透明にする(図形の書式設定)
図形を右クリック →
右側に設定パネルが出るので、以下の2箇所を変更します。
図形を右クリック →
図形の書式設定 を開く。右側に設定パネルが出るので、以下の2箇所を変更します。
❶ 塗りつぶし
変更前:
青系の色
▼ これを変更
変更後:
❷ 線
変更前:
青系の色
▼ これを変更
変更後:
設定前後の見た目:
設定前
男
青い塗りつぶし+青い枠線
→
設定後
男
透明(何も見えない)
STEP 6
図形の周辺セルも白塗り+罫線なしにする
図形を透明にしても、下のセルの罫線やグリッド線が透けて見えます。
図形を配置した付近のセルを選択して以下を設定します。
図形を透明にしても、下のセルの罫線やグリッド線が透けて見えます。
図形を配置した付近のセルを選択して以下を設定します。
セルの書式設定
塗りつぶし
白
フォント色
白(スイッチ用セルの場合)
罫線
なし(すべての辺を削除)
⚠ 図形の透明化 + 周辺セルの白塗り ── 両方セットで必要
・図形だけ透明にしても → 下のセルの罫線が透けて見える
・セルだけ白塗りにしても → 図形の枠線が残って見える
必ず両方行ってください。
・図形だけ透明にしても → 下のセルの罫線が透けて見える
・セルだけ白塗りにしても → 図形の枠線が残って見える
必ず両方行ってください。
STEP 7
図形を1回クリック → 数式バーに名前を入力 → Enter
操作手順:
数式バーへの入力
①
図形を 1回クリック(周囲に○ハンドルが出る状態)
②
シート上部の 数式バー をクリック
③
名前を入力して Enter(例:
=丸男)
| セルの文字の上に置いた図形 | 数式バーに入力 |
|---|---|
| B5「男」の上の図形 | =丸男 |
| D5「女」の上の図形 | =丸女 |
| B7「昭和」の上の図形 | =丸昭和 |
| D7「平成」の上の図形 | =丸平成 |
| F7「令和」の上の図形 | =丸令和 |
⚠ ダブルクリック厳禁
ダブルクリックすると「テキスト編集モード」になり、数式バーではなく図形内部に入力されてしまいます。
必ず1回クリックで選択状態にしてから数式バーを操作してください。
間違えたら:Esc キーで編集モードを抜ける → 図形の外をクリック → もう一度図形を1回クリック → 数式バーへ
ダブルクリックすると「テキスト編集モード」になり、数式バーではなく図形内部に入力されてしまいます。
必ず1回クリックで選択状態にしてから数式バーを操作してください。
間違えたら:Esc キーで編集モードを抜ける → 図形の外をクリック → もう一度図形を1回クリック → 数式バーへ
STEP 8
テキストボックスの場合のみ:フォントサイズを調整
テキストボックスは中に「○」という文字が表示されるので、セルの文字を囲むくらいの大きさにフォントを拡大します。
テキストボックスは中に「○」という文字が表示されるので、セルの文字を囲むくらいの大きさにフォントを拡大します。
フォントサイズの目安
セルの文字
11pt(標準)
テキストボックス内の○
28~36pt 程度(文字を囲むサイズに調整)
楕円の場合はこの手順は不要です(図形のサイズ=○の大きさなので、図形の大きさをドラッグで調整するだけ)。
動作確認
▼ 性別欄
| 入力シート B2 | B5「男」の上の図形 | D5「女」の上の図形 |
|---|---|---|
| 男 | ○が出て「男」を囲む | 透明(見えない) |
| 女 | 透明(見えない) | ○が出て「女」を囲む |
▼ 生年月日欄
| 入力シート B3 | B7「昭和」の上 | D7「平成」の上 | F7「令和」の上 |
|---|---|---|---|
| 昭和 | ○ | - | - |
| 平成 | - | ○ | - |
| 令和 | - | - | ○ |
パフォーマンスの注意
🔶 大量に使うとカクつく場合がある
IF式自体は軽いですが、Excelはセル編集のたびに全図形を再描画します。1シート10~30個なら問題なし。それ以上はシート分割を。
IF式自体は軽いですが、Excelはセル編集のたびに全図形を再描画します。1シート10~30個なら問題なし。それ以上はシート分割を。
よくあるトラブル
| 症状 | 対処 |
|---|---|
| ○ではなく「0」が出る | I2 を Delete で消すか ="" |
| 枠線・罫線が見える | 図形「線なし」+ 周辺セル白塗り・罫線なし(STEP 5・6) |
| 数式バーに入力できない | Esc → 1回クリックでやり直し(STEP 7) |
| #NAME? | 名前の管理で登録名を確認 |
| #REF! | 日本語シート名を '入力'!$B$2 と囲む |
| 印刷で○が消える | サイズとプロパティ →「オブジェクトを印刷する」にチェック |
| 位置がズレる | サイズとプロパティ →「セルに合わせて移動やサイズ変更をしない」 |
他の方法との比較
| 方法 | VBA不要 | 文字を○で囲む | 引き継ぎやすさ |
|---|---|---|---|
| セル内にIFで「○」表示 | ○ | × サイズ・位置の自由が利かない | ○ |
| チェックボックス | ○ | × 四角いデザイン | ○ |
| VBAで図形の表示/非表示 | × .xlsm必須 | ○ | △ |
| 本手法 | ○ .xlsxのまま | ○ 自由な位置・大きさ | △ 仕組みが見えにくい |
バージョン互換性
Excel 97 以降すべてのバージョンで動作。使用する関数は IF のみ。