数枚であれば印刷し手書きで十分ですが、従業員分 数百枚だと余りにも面倒なのでExcelの標準機能だけで一覧の文字or数字の上に丸を自動記入する方法をメモ。
やりたい事
帳票やアンケートなどで「一覧から任意を選択する」ため、丸(○)を記入する事が多々あります。例えば、生年月日の年号が昭和なら2番に○、平成なら3番に○。
今回やりたい事は、生年月日の年号に対応した番号の上に丸を自動的に記入する事です。
サンプル画像は
- 他シートに入力してあるテーブル「id,名前,生年月日のテーブル」を参照
- idを切り替え
- 生年月日にあった年号番号上に○を表示
生年月日を入力すると自動的に年号の上に丸されるため、帳票作成が楽になります。
また、VBA を使う必要性がないので誰でも作れます。
数字や文字の上に○を描く方法
Excelの標準機能だけで自動的に丸の位置を移動出来る事がわかりました。
- 任意のセルに生年月日を入力
※下記画像の左上の日付 - 生年月日の年号(大正・昭和・平成)を判定し○を表示するセルを3つ用意
- 各セルに関数を入力
- 大正セル
- =IF(TEXT(<生年月日のセル>,"g")="T","○","")
- 昭和セル
- =IF(TEXT(<生年月日のセル>,"g")="S","○","")
- 平成セル
- =IF(TEXT(<生年月日のセル>,"g")="H","○","")
次に前述の3つのセルを図としてコピーをします。
サンプル画像は大正・昭和・平成の横にある数字に画像を配置しています。
最後に貼り付けた画像に参照するセルを入力します。
- 大正用丸画像
- =$BE$7
- 昭和用丸画像
- =$BF$7
- 平成用丸画像
- =$BG$7
シートの枠線はOffにしましょう
後から分かった事ですが、シートの枠線をOffにするといいです。参照しているセルの枠線が○画像にも反映されるため、枠線をOnにしていると枠線が重なり合います。
見た目上悪いのでOffをお勧めします。
横長・縦長の○には向かない作りです
○画像を横長・縦長してところ、広げた方向に太くなります。当然ですよね見た目に拘らない場合はこれで良いかもしれませんが、拘る場合は別の方法を検討した方がいいかもしれませんね。
余談:今まではVBAで操作してました
今までVBAで丸の座標を移動する方法を採用していました。
変更さえなければ非常に便利ですが、帳票のスタイル変更が入った場合は変更にかかる作業コストが高くなります。
今回の方法を使えば丸画像(今回は3個)の位置を調整するだけなので非常に便利です。
余談:Excel Onlineでは使えない
本内容が含まれたデスクトップ版Excel ファイルをOneDriveへアップロードし、Excel Onlineで使えるか確認してみました。結果、カメラ機能が含まれているため起動できませんでした。
今後に期待したい所です。
更新履歴
- 2016.03.30 加筆
- タイトルを変更
- 記事構成を変更
- Tipsを追加