• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シート1の収支表のAという項目をシート2の月経費表にAを拾い上げて全て金額だけを羅列させたい)

シート1の収支表からシート2の月経費表にガソリン代を羅列する方法

このQ&Aのポイント
  • シート1の収支表のAという項目をシート2の月経費表にAを拾い上げて全て金額だけを羅列させたい方法について説明します。
  • 収支表を日々つけていて、ガソリン代などの情報が入力されています。それをシート2の月経費表の該当する項目に羅列させて合計を出す方法について説明します。
  • 具体的な手順として、まずシート2の月経費表の該当するセルにVLOOKUP関数を使って収支表の情報を拾ってきます。そして、他の日の情報も同様に入力していきます。最後に合計を計算するためにSUM関数を使用します。

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

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

No.1です! たびたびごめんなさい。 補足に >私の表で I に作業列を作って品名がEで、支払金額がGとなると数式が又違いますでしょうか? とありますので・・・ そうですね!セルの配置が違うと当然範囲指定の領域も変わってきますよね。 ↓の画像のような配置になっているのでしょうか? そうであれば、作業列のI5セルの数式は =IF(E5=Sheet2!$A$2,ROW(A1),"") となります。 結局、Sheet2のA2セルに入力した物を引っ張り出したいわけですので、 Sheet1の品目のE列を参照してそれに対し、一致するものの行番号を表示させているわけです。 となると、当然他の数式も若干変わってきます。 Sheet2のA4セルは =IF(COUNT(Sheet1!$I$5:$I$500)<ROW(A1),"",INDEX(Sheet1!$D$5:$D$500,SMALL(Sheet1!$I$5:$I$500,ROW(A1)))) B4セルは =IF(A4="","",INDEX(Sheet1!$G$5:$G$500,SMALL(Sheet1!$I$5:$I$500,ROW(A1)))) となります。 合計金額は前回そのままでOKだと思います。 今回は支出だけの表示方法ですが、収入に関しては種類が少ないと思いますので 参考になりますかね? どうも長々と失礼しました。m(__)m

14happy200
質問者

お礼

tom04さん本当にありがとうございました!!これでいけそうな感じです。あとは私が間違えずに出来るかだけですが、作ってみます。それでシート2のA3のセルがあいていますが、A2のガソリンのすぐ下にひっつけて つまりA3とB4に1/8 2200 と続けて欄を作っていって、最後にA17とかでSUMで合計を出しても 数式はこのままでいいですよね これで作ってみまして駄目だったら tom04さんの教えて下さった通りの表にします。本当に本当にありがとうございました。まさか一日で解決して頂けるとは 本当に感謝なのです。昨日も今日も、マイクロソフトにも電話しても集計表とかリンクとかにとどまって判らず、パソコンの何でも質問できる有料の所にも電話して聞きましたが、結局このような表を作る関数は難しすぎて判らないと言われ自分で検索して調べられた方が…と言われて困っていました。自分で調べても勿論判らずに、困り果てていました。家族で仕事をしているのですが、本当に助かりました、本当にありがとうございました。感謝いたしております。どうもありがとうございました。感謝で一杯です。がんばります

その他の回答 (1)

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

こんばんは! 参考になるかどうか判りませんが・・・ 一例として↓の画像のようにしてみました。 セルの配置は違うかと思いますので 方法だけ理解してもらえればと思います。 Sheet2のA2セルに 品名を入力すると、その品目の一覧が表示され、B2セルに合計金額が集計されるようにしています。 まず、Sheet1に作業用の列を使わせてもらっています。 作業列H5セルに =IF(Sheet2!$A$2="","",IF(F5=Sheet2!$A$2,ROW(A1),"")) という数式を入れオートフィルで下へコピーします (Sheet2の数式が500行まで対応できるようにしていますので、そのくらいまでコピーしても構いません) 次にSheet2のA4セルに =IF(COUNT(Sheet1!$H$5:$H$500)<ROW(A1),"",INDEX(Sheet1!$E$5:$E$500,SMALL(Sheet1!$H$5:$H$500,ROW(A1)))) B4セルに =IF(A4="","",INDEX(Sheet1!$G$5:$G$500,SMALL(Sheet1!$H$5:$H$500,ROW(A1)))) という数式を入れ、A4・B4セルを範囲指定し、 B4セルのフィルハンドルで下へコピーします。 最後にSheet2の合計金額、B2セルに =IF(A2="","",SUM(B4:B200)) という数式を入れると画像のような感じになります。 これで、A2セルに好みの品目を入力するたびに そのデータが反映されるはずです。 以上、長々と書きましたが、 参考になれば幸いです。 他に良い方法があれば読み流してくださいね。m(__)m

14happy200
質問者

補足

うわー凄いですねー。この関数は何という関数か判りませんが、とても凄いですね~。私の作りたい表はこんな感じです。私の収支表にはEが品名で、Fに収入金額、Gに支払金額で、Hに差引金額 となっています。で品名にガソリンと書いて、Gの支払金額の所に2000と書いていって、Hの差引金額に先月からの差引金額が続きますが、私の表に置き換えると、Hの差引金額の列の横に、作業列としてI を作っていくと、そうすると最初に教えて頂いている関数が、変わりますでしょうか? 作業列のH5に =IF(Sheet2!$A$2="","",IF(F5=Sheet2!$A$2,ROW(A1),"")) と書いて下さいましたが、私の表で I に作業列を作って品名がEで、支払金額がGとなると数式が又違いますでしょうか?すみません関数を丸写しをさせてもらわないと 全く判らなくて… この関数は何という関数になるのですか 本当に凄いですね~難しい関数で理解力がついていかずに申し訳ありません。丸写しで作るしかないと悟りまして…本当に何度もすいませんが宜しくお願い致します