• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:給料明細表の所得税をVLOOKUP関数などで出したいとかんがえてますが)

給料明細表の所得税をVLOOKUP関数で出す方法

このQ&Aのポイント
  • 給料明細表の所得税をVLOOKUP関数などを使用して出す方法を考えています。具体的には、源泉徴収表のデータをコピーし、関数またはマクロで検索して表示させたいです。国税庁の公式ウェブサイトには詳細な情報が掲載されています。
  • 給与明細のレイアウトは、セルK47に支払金額が表示されています。また、セルC14に所得税を表示したいです。給与明細は加工が厳しい状態で、A列にしか空きがないため、A7に不要人数を他のセルから参照させる予定です。
  • 給与明細は現場別に複数存在するため、同じファイルではなく、別のファイルとして源泉徴収表を作成し、そのデータから複数の明細書を読み込ませたいと考えています。また、扶養の人数によって変化する金額の表示方法についても検討しています。マクロを使用する場合、具体的な式はわかりませんが、助けていただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • mar00
  • ベストアンサー率36% (158/430)
回答No.7

何度もすいません。 =IF(K47<88000,0,VLOOKUP(K47,'[源泉徴収表.xls]月額表(平成20年4月以降分)'!$B$5:$K$344,3+A7,TRUE)) で大丈夫だと思います。

07535373
質問者

お礼

何度も検討いただきありがとうございます。 御蔭さまで上手く表示出来ました。 ありがとうございました。

その他の回答 (6)

  • mar00
  • ベストアンサー率36% (158/430)
回答No.6

ANo.5の回答は無視して下さい。

  • mar00
  • ベストアンサー率36% (158/430)
回答No.5

=IF(K47<88000,0,VLOOKUP(K47,'[源泉徴収表.xls]月額表(平成20年4月以降分)'!$B$5:$K$344,3+A7,TRUE)) としてはどうでしょうか。

  • mar00
  • ベストアンサー率36% (158/430)
回答No.4

A7に扶養人数が入るということなので =VLOOKUP(K47,'月額表(平成20年4月以降分)'!B:L,3+A7) できると思いますよ

07535373
質問者

補足

回答ありがとうございます。 上手く表示できませんでしたが、 このように、書き換えましたが、 =VLOOKUP(K47,'[源泉徴収表.xls]月額表(平成20年4月以降分)'!$B$5:$K$344,3+A7,TRUE) 88000円以下の場合エラーが、でます。 教えていただいた関数では、表示されませんが 参照先の入力が、私が間違えたのかと考えましたが上手くゆきません。 何か案が有るでしょうか。 おねがいします。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! 一例です。 方法だけ理解してもらえれば良いかな!と思い、↓の画像のようにしてみました。 左側がSheet1でSheet2に課税額のデータ表があるとしています。 Sheet1のB8セルに =IF(B5="","",INDEX(Sheet2!C3:G7,MATCH(B5,Sheet2!A3:A7,1),B7+1)) という数式を入れています。 実際のデータの場合は範囲指定の領域がかなり広くなると思いますが 方法としては全く同様です。 Sheet2の黄色の列だけが数式で必要になります。 国税庁の表には「甲」と「乙」がありますが、ほとんどが「甲」で対応できると思います。 以上、参考になれば良いのですが 的外れならごめんなさいね。m(__)m

07535373
質問者

お礼

ありがとうございます。 ワザワザサンプルまで いただき感激です。 今後のアイデアの参考にさせていただきます。 皆さまのおかげで なんとか出来そうです。 ありがとうございます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

国税庁のURLから表を取り出しました。 これをもとに甲の税額と乙の税額を求めるためには次のようにします。 例えばシート上でA1セルが氏名、B1セルが扶養親族等の数、C1セルが社会保険等控除後の給与等の金額、D1セルが甲税額、E1セルが乙税額のように項目名があり、2行目から下方にデータが入力されているとします。 D2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(C2="","",IF(OR(C2<88000,C2>1010000),"計算を別に行ってください",SUMPRODUCT(('[01.xls]月額表(平成20年4月以降分)'!$B$13:$B$346<=$C2)*('[01.xls]月額表(平成20年4月以降分)'!$C$13:$C$346>$C2)*(INDIRECT("'[01.xls]月額表(平成20年4月以降分)'!"&ADDRESS(13,4+B2)):INDIRECT("'[01.xls]月額表(平成20年4月以降分)'!"&ADDRESS(346,4+B2)))))) E2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(C2="","",IF(OR(C2<88000,C2>1010000),"計算を別に行ってください",SUMPRODUCT(('[01.xls]月額表(平成20年4月以降分)'!$B$13:$B$346<=$C2)*('[01.xls]月額表(平成20年4月以降分)'!$C$13:$C$346>$C2)*('[01.xls]月額表(平成20年4月以降分)'!$L$13:$L$346)))) '[01.xls]月額表(平成20年4月以降分)'!の部分はあなたが国税庁から取り込んだ表がどこに保存されているかによって違ってきますね。実際に取り込んだ表の一部を作成中のセルに表示させる操作(=を数式バー上に表示させその後に取り込んだ表の例えばA1セルをクリックする)をすれば分かりますね。

07535373
質問者

お礼

回答ありがとうございます。 返答が遅くなり 失礼しました。 税額の甲だけ出したかったのと、 直接明細表に表示させたかったので、 教えていただいた とうりにして このように 参照するセルだけ変えました。 SUMPRODUCT(('[源泉徴収表.xls]月額表(平成20年4月以降分)'!$B$13:$B$346<=$K47)*('[源泉徴収表.xls]月額表(平成20年4月以降分)'!$C$13:$C$346>$K47)*(INDIRECT("'[源泉徴収表.xls]月額表(平成20年4月以降分)'!"&ADDRESS(13,4+A7)):INDIRECT("'[源泉徴収表.xls]月額表(平成20年4月以降分)'!"&ADDRESS(346,4+A7)))))) おかげで 間違いなくよみこめるようです。 ありがとうございました。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

具体的にどの部分がわからないのでしょうか? 縦に収入、横に扶養人数が記載されている国税庁の表から、それぞれの収入と扶養人数に対応する所得税額を表示したいなら、INDEX関数を利用します。 その収入金額に該当する縦位置を取得するにはMATCH関数(第3引数1)を利用します。 横位置の扶養人数も同様にMATCH関数(第3引数0)で表示できます。 これらの関数を実際に使ってみて(ヘルプに使い方が書いてあります)、どの部分がわからないのか具体的に例示してください。

07535373
質問者

お礼

回答ありがとうございます。 お礼が遅くなりスミマセンでした。 皆さんのおかげで うまくゆきそうです。 ありがとうございます。

関連するQ&A