【スプレッドシート時短術】XLOOKUP関数で通勤手当の計算を自動化!給与計算のミスと手間を劇的に削減する方法

毎月の給与計算、本当にお疲れ様です。
特に、従業員さん一人ひとりの交通手段や通勤距離によって変動する通勤手当の計算は、地味に時間のかかる作業ではないでしょうか?
「この人の通勤距離は何キロだったかな…」
「非課税の上限額はいくらだっけ?」
国税庁のホームページや資料と従業員名簿を何度も見比べて確認するのは、とても手間がかかりますし、うっかりミスも起こりがちです。
もし、この面倒な確認作業が一瞬で完了するとしたら、どうでしょう?
実は、Googleスプレッドシート(スプシ)のXLOOKUP(エックスルックアップ)関数を使えば、そんな夢のような仕組みを簡単に作れてしまうのです。
今回は、給与計算の担当者様に向けて、XLOOKUP関数を使って通勤手当の非課税限度額を自動で表示させる方法を、専門用語をなるべく使わずに分かりやすく解説します。
そもそもXLOOKUP関数とは?
「VLOOKUPなら聞いたことあるけど…」という方もいらっしゃるかもしれませんね。
XLOOKUP関数は、特定の範囲からデータを探して、対応する値を取り出してくれる関数です。
VLOOKUP関数の後継とされ、より直感的で柔軟な検索ができる、とても便利な関数なのです。
▼XLOOKUP関数のすごいところ
- 探す場所が左右どちらでもOK: VLOOKUPは検索値より右側の列しか探せませんでしたが、XLOOKUPは左右どちらでも探せます。
- 設定がシンプル: 引数の指定がVLOOKUPより分かりやすく、直感的に使えます。
- エラーに強い: 表の列を後から追加・削除してもエラーが起きにくい構造になっています。
「なんだか難しそう…」と感じた方もご安心ください。
一つひとつの手順を丁寧にご説明しますので、一緒に進めていきましょう。
実践!XLOOKUPで通勤手当の非課税限度額を自動計算する3ステップ
ここからは、具体的な手順を見ていきましょう。
今回は、「マイカー・自転車などで通勤している人の通勤手当」を例に解説します。
ステップ1:準備編「非課税限度額マスター表」を作成する
まずは、計算のもととなるマスター表(一覧表)を作成します。
国税庁が定めている「マイカー・自転車通勤者の通勤手当の非課税限度額」の情報を、スプレッドシートに書き出しましょう。
【超重要ポイント】
ここで最も大切なのは、表を「片道の通勤距離」が短い順(昇順)に並べて作成することです。
こうすることで、後ほど使うXLOOKUP関数が「〇km以上、△km未満」という条件を正しく認識してくれます。
片道の通勤距離(km) | 非課税となる限度額 |
2 | 4,200 |
10 | 7,100 |
15 | 12,900 |
25 | 18,700 |
35 | 24,400 |
45 | 28,000 |
55 | 31,600 |
この表は、一度作ってしまえば今後ずっと使えます。
別のシートに「マスターデータ」として作成しておくと管理がしやすいですよ。
ステップ2:実践編「従業員名簿」に関数を入力する
次に、従業員名簿のシートに関数を入力していきます。
あらかじめ、従業員さんごとの「片道の通勤距離」を入力する列を用意しておきましょう。
そして、非課税限度額を表示させたいセル(下の画像の例ではD2セル)に、以下の数式を入力します。
=XLOOKUP(C2,マスター!$A$2:$A$8,マスター!$B$2:$B$8,"",-1)
なんだか呪文のように見えますが、分解すれば簡単です。
=XLOOKUP(
:ここからXLOOKUP関数を始めますよ、という合図です。C2
:何を探すか?(従業員の通勤距離が入力されているセル)マスター!$A$2:$A$8
:どこから探すか?(ステップ1で作ったマスター表の「通勤距離」の範囲)マスター!$B$2:$B$8
:どの範囲の値を取り出すか?(マスター表の「非課税限度額」の範囲)""
:もし見つからなかったらどうするか?(今回は空欄にしています)-1
:どうやって探すか?(ここが最重要! 「完全一致、またはそれに満たない直近の値を探す」という設定です)
【ポイント解説:絶対参照「$」】
数式の中にある「$」マークは、「絶対参照」といって、数式をコピーしても参照する範囲を固定してくれるおまじないです。
マスター表の範囲は動いてほしくないので、`$A$2:$A$8`のように列と行のアルファベット・数字の前に「$」を付けます。
【ポイント解説:「-1」の意味】
通勤距離が「8km」の人の場合、マスター表に「8」という数字はぴったりありません。
しかし、一致モードを「-1」に設定しておくことで、「8km」に満たない直近の値である「2km以上」の行を探し出し、対応する「4,200円」という限度額を正しく見つけ出してくれます。これが、通勤手当の計算でXLOOKUP関数が真価を発揮する最大の理由です。
ステップ3:応用編「オートフィル」で一瞬で反映させる
数式が入力できたら、あとはセルの右下にカーソルを合わせて「+」マークになったところでダブルクリックするか、下までドラッグ(オートフィル)します。

すると、どうでしょう! 他の従業員さんの非課税限度額も、あっという間に自動で表示されたはずです。
これで、毎月大変だった確認作業から解放されます。
まとめ:賢くツールを使って、大切な業務に集中できる環境を
今回は、GoogleスプレッドシートのXLOOKUP関数を使って、面倒な通勤手当の計算を自動化する方法をご紹介しました。
この仕組みを一度作ってしまえば、
- 計算ミスや確認漏れがなくなる
- 給与計算にかかる時間が大幅に短縮される
- 法改正で限度額が変わってもマスター表の修正だけで済む といった、たくさんのメリットがあります。
日々の業務に追われる中で、こうしたツールを賢く活用して作業を効率化することは、とても重要です。
生まれた時間で、従業員さんとの面談や、より良い職場環境づくりなど、本来時間をかけるべき大切な業務に集中できるようになります。
とはいえ、
「給与計算や社会保険の手続きは、やっぱり不安…」
「法改正の情報を追いかけるのが大変」
と感じることもあるかと思います。
そんな時は、私たち社労士事務所ぽけっとにお気軽にご相談ください。
給与計算や労務管理の専門家として、貴社の状況に合わせた最適なサポートをご提案いたします。
専門的な業務はプロに任せて、経営者様や担当者様は安心して本業に専念できる環境づくりをお手伝いします。
【免責事項】
本記事の内容は、作成日時点の法令等に基づき作成しております。法改正などにより、情報が変更となる可能性があります。また、個別の事案についての具体的な判断は、必ず専門家にご相談ください。本記事の情報を用いて行う一切の行為について、当事務所は何ら責任を負うものではありません。