昔にこのブログで書いたことがあったような気がしていたのですが、どうやら書いていなかったので今更ながらここで記事にしてみようと思い、Excelのindirect関数を使って「一般税率」と「特例税率」の贈与税の計算をする個人的なやり方を備忘代わりに記事にしておきます。
先に言っておきます。
「それって、indirect関数を使う必要あるの?」と言われると、なんとも言えない感じになります。
個人的な税理士業務でのindirect関数の使いどころ。
どういうことがやりたいかは下記の動画をみてもらうと早いかと思います。
動画にもあるようにExcelのC2のセルで「一般贈与」か「特例贈与」かを選択することでそれぞれに対応した税率や控除額を連動するようにすることができます。
それぞれのセルに入力されている数式はこんな感じです↓
C6セルとC7セルのところでindirect関数を使って使用する税率の表を切り替えています。
これが自分が知っているindirect関数の数少ない使いどころです。
他にも1月~12月など複数のシートの金額の合計をindirect関数を使って集計したりといった使い方もあるとは思いますが現状は自分は使っていません。
今回のやりたいことをするためのポイントは下記の3つです
- 控除額や適用する税率の範囲を「名前で定義する」
- INDIRECT関数
- VLOOKUP関数
控除額や適用する税率の範囲を「名前で定義する」
贈与には一般贈与と特例贈与で2つの税率表が必要
贈与税の計算方法には「特例贈与」と
贈与により財産を取得した者(贈与を受けた年の1月1日において18歳(注)以上の者に限ります。)が、直系尊属(父母や祖父母など)から贈与により取得した財産に係る贈与税の計算に使用します。
(注) 「18歳」とあるのは、令和4年3月31日以前の贈与については「20歳」となります。
例えば、祖父から孫への贈与、父から子への贈与などに使用します(夫の父からの贈与等には使用できません。)。
国税庁HPより引用
それ以外の「一般贈与」があるので、贈与により財産をあげる人と、もらう人の間柄によって計算方法が違っていくことになります。
なのでExcelで贈与税の試算などをするときには、一般贈与と特例贈与の2つの税率表を作る必要があります。
こんな感じで↓
一般贈与と特例贈与の税率表の範囲に「名前を定義する」
表ができたら、一般贈与と特例贈与の2つの税率表の範囲にそれぞれ「名前を定義」します。
この作業をしないとindirect関数で税率表の切り替えをすることができません。
この名前を付ける時にポイントがありまして、今回のケースだと
- C2セルに表示させる名前と
- 税率表の範囲の名前
を「同じ名前にしておく。」ということです。これが大事。
具体的に一般税率の表の範囲に「名前を定義する」場合にはこんな感じで定義します↓
特例贈与の税率表の範囲についても同じように名前を定義します↓
こうすることでindirect関数を使って贈与の区分に応じてそれぞれに対応した税率や控除額を連動させていくことができるようになります。
ここまで来ればほぼ出来上がったようなものです。
VLOOKUP関数の範囲を指定するときにINDIRECT関数を使う。
あとはC6のセルとC7のセルに対してVLOOKUP関数を使って税率表から「税率」と「控除額」を連動させていけば完成となります。
入力する数式は下記の画像を参考にしてもらえればと思います
VLOOKUP関数の数式の「範囲」を指定する際にindirect関数を使って
「INDIRECT($C$2)」とすることでC2のセル。すなわち特例税率(または一般税率)と記載されている部分を参照することになります。
先ほど名前の定義をしたことで一般税率については「B12セルからE16セルまでの範囲」が「一般税率」という名前の範囲になっており、
特例税率については「G12セルからJ16セルまでの範囲」が「特例税率」という名前の範囲になっています。
こうすることでC2セルが「一般税率」の表示になっているときはVLOOKUP関数の「範囲」については一般税率と定義した範囲、すなわちB12セルからE16セルまでの範囲の中で検索をすることになります。
もしC2セルが「特例税率」の表示なっている場合にはVLOOKUP関数の「範囲」については特例税率と定義した範囲、すなわちG12セルからJ16セルまでの範囲の中で検索をすることになります。
結果的に贈与の種類に応じて使っていく税率の表を切り替えることが実現できます。
まとめ
自分で記事を書いている途中何度も「今回のケースなら別に絶対的にindirect関数をつかわないとだめってことはないよな~」と思いました。
なんら投稿自体やめてしまおうかとも。
Vlookup関数とIF関数を使ってやってもいいし、一般税率と特例税率をそれぞれ別のシートに作れば同じことができますので。
数式をすっきりさせたい。シートを切り替えるのがめんどくさい。と感じる人はこのやり方を試してみるのもありかもしれません。
昔から「いやいや、こういうケースはindirect関数使ったほうが便利でしょ!」と、ピンとこないのが正直ありまして、そのせいでこの関数に対しては苦手意識というか、使いこなせない感じがあるんですよね。
【本日の近況報告】
先日齢40歳に到達しました。そろそろ税理士業界でいう「若手」を謳い文句にするものイタイ感じがでてくる年齢になってしまいました。(あくまで個人的な意見です)
60代、70代、80代が全体の半数を占めているといわれる税理士業界的には「若手」の部類になるのかもしれませんが、世間一般的には40歳は立派なおっさんですからね。
【本日の1曲】
The Kooks & Milky Chance/Beautiful World
kooksの6枚目のアルバムの中からの1曲。ベドウィンサウンドクラッシュを思わせるイントロから始まるスカ・レゲエ調の曲。
まだまだ残暑厳しい夜更けに似合うのではないでしょうか。しらんけど。