Excel 条件付き書式などで自身のセルやその周辺を選択したい時、アドレスを直打ちしない方法
条件付き書式等で、自身のセルの左隣のセルの値を使いたい・比較したい、あるいは自身のセルの状態を条件式の中に入れたい時、「A3」「$B$8」みたいにアドレスを直打ちしない方法をメモ。
かなり長ったらしいので、別の方法有るなら誰か教えてください。
直打ちしたくないなら関数にお任せってことで、主に使うのは下の4つの関数です。
INDIRECT関数
これは引数に文字列でアドレスを入力することで値を参照できるという関数です。ただ参照する時には普通アドレスを直接入力するんですが、ADDRESS関数等で文字列で直接アドレスが求まる場合、INDIRECT関数で参照してやる必要が有ります。
ADDRESS関数
引数に行番号、列番号を入れることでアドレスを文字列として返してくれる関数です。第3引数以降は省略可能ですが、第3引数によって返す値が絶対参照か相対参照かが変わります。デフォルト(省略した場合)は絶対参照です。
ROW関数
行番号を返す関数です。引数は省略可能で、省略した場合関数が記述されたセルの行番号を返します。
COLUMN関数
列番号を返します。これも引数は省略可能で、省略した場合関数が記述されたセルの列番号を返します。
使用例
- 左隣のセルと比較して小さいなら真
- IF(INDIRECT(ADDRESS(ROW(),COLUMN()-1))>INDIRECT(ADDRESS(ROW(),COLUMN())),TRUE,FALSE)
- 自身のセルが空白なら真
- ISBLANK(INDIRECT(ADDRESS(ROW(),COLUMN())))
- IF(INDIRECT(ADDRESS(ROW(),COLUMN()))="",TURE,FALSE)