前回の日記で所得税の税額表を作りましたが、これに関するExcelネタを一つ。
エクセルで他のデータと連携した資料を作る際に活用するのが、vlookup関数です。
検索値に対応する別の列の数値を自動で引っ張ってくれるありがたい関数ですが、このvlookup関数を使う際、次のように最後に「False」を入れて「完全一致」で検索することがほとんどだと思います。
「=VLOOKUP(B12,A4:D10,3,FALSE)」
このFalseを入力しない、またはTrueでvlookup関数を使うと、完全一致に代えて、検索値以下で最大値となるものに対応する別の列の数値を引っ張ってきます。
データを引っ張ってくる元データが適当な順番で並んでいる場合、このTrueでの検索は使い道がありませんが、今回の所得税の税額表のように検索値が小さいものから順にならんでいる場合には、True検索が威力を発揮します。
今回の所得税の税額表で次のように、
「=VLOOKUP(B12,A4:D10,3,TRUE)」
「=VLOOKUP(B12,A4:D10,4,TRUE)」
という数式を入れてみると、入力した課税所得をA列で検索し、この課税所得未満のうち最大となる税率と控除額を抽出することが出来ます。
例えば次のように課税所得に20,000,000円と入れてみると、20,000,000円に対応する税率40%と控除額 2,796,000円を引っ張って、税額を計算させることが出来ます。
これをひねると、次のように国税庁の月額表のデータを使って、ある金額と扶養親族数に対応する給与の源泉所得税額を抽出させることもできます。