• 締切済み

勘定科目の集計がしたい

営業の使う精算書を作成しています。 精算書には日付、科目、用途、金額などの項目があり、 空欄に記入できるようになっています。 科目と用途は別シートの科目一覧をリスト参照して選択できるようにしています。 18の科目の中から、精算書に記入された科目だけを集計して、 精算書と同じシートに表示したいです。(ソートは不要) 科目一覧表にsumif関数やdsum関数で 各項目を表示することはできるのですが 「精算書に記入されている科目だけを集計」というところがクリアできません。 初心者のため、おわかりになる方がいらっしゃいましたらご教授いただけないでしょうか。 よろしくお願いいたします。

みんなの回答

  • layy
  • ベストアンサー率23% (292/1222)
回答No.7

>例:全18科目18行の表示ではなく >  清算書に交通費と通信費しか入力されていなければ2行の表示 科目一覧を元に作業セルを準備、 そこで、何種類?、それは何?を求めるのを先、としてできるか?。 重複しているかどうかを求めてから合計、「交通費5000円」、は設定しやすい。 合計を先に求めているから、重複はどうしよう?となった。 交通費 出現1回目 → 合計表示対象セル 交通費 出現2回目 → 合計表示対象セルでない 通信費 出現1回目 → 合計表示対象セル 交通費 出現3回目 → 合計表示対象セルでない ・・・・ ・・・・ A1=A1からA1まででA1と同じものだったら+1、よって1 A2=A1からA2まででA2と同じものだったら+1、よって2 A3=A1からA3まででA3と同じものだったら+1、よって1 A4=A1からA4まででA4と同じものだったら+1、よって3 出現カウンタは求めることができそう。 ----------------------------------------------------------------- 科目一覧表は下記のようなレイアウトです。 交通費 ¥5,000(sumif/dsumを利用) 交際費 ¥0 通信費 ¥1,000 ....(18行) 例:全18科目18行の表示ではなく   清算書に交通費と通信費しか入力されていなければ2行の表示 ----------------------------------------------------------------- 当初の質問としてはこれではないか?。 「何種類?、それは何?を求める」 このあたりを観点にすると何か見つかるのでは?。

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

>C列に60行までランダムな順で入力される科目を集計して表にしたいのですが、 ご希望の操作を簡単に説明すると、C列に(私への補足説明ではB列のように見えますが)入力された科目データのみ重複を避けて一覧表を作成したい(それ以外はDUMIF関数などで計算できる)ということでしょうか? その場合は(1行目が項目名で2行目からデータが入力されている場合)、以下のような数式でC列に入力されている科目のみ表示することが可能です。 =INDEX(C:C,SMALL(INDEX((MATCH($C$2:$C$60&"",$C$2:$C$60&"",)<>ROW($C$2:$C$60)-1)*1000+ROW($C$2:$C$60),),ROW(A1)))&""

  • layy
  • ベストアンサー率23% (292/1222)
回答No.5

>科目一覧表にsumif関数やdsum関数で SUMIFの使い方は知っているみたいなので、 それでは違うのだろう。 「科目だけを」の「だけ」に困っていると思いますが??。 逆か?。 精算書に記載された科目だけ、科目一覧の金額欄にセットする。 精算書に記載されていない科目は、科目一覧の金額欄に表示させない。 本人が応用できれば良い話なので、 具体例提示じゃなくても、 ・・・のシートの・・・を・・・したい、とか 聞きたいところの補足をお願いします。

enjoyeveryday
質問者

お礼

たびたびご検討いただきありがとうございます! すでに表示された行との重複をどうすべきか迷っております。 matchなどを用いてdsumの入れ子やsumproductなども使えないか検討しましたが考え付くことができておりません。 マクロを用いたほうがよろしいでしょうか。 どうぞよろしくお願いいたします。

enjoyeveryday
質問者

補足

補足させていただきます。 精算書に記載された科目だけ、科目一覧の科目名・金額欄に1行目からセット(ソートは不要です) 精算書に記載されていない科目は、科目一覧の科目名・金額欄に表示させない。 こちらで説明になればよいのですが・・ 別シートにある科目一覧は、現在は文字列昇順に整列されておりません。

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

>「精算書に記入されている科目だけを集計」というところがクリアできません。 具体的にどのような集計結果にしたのでしょうか? 元データのレイアウトと集計データのレイアウトを具体的に例示してください。

enjoyeveryday
質問者

お礼

ご回答ありがとうございました。 求めている表示形式は 清算書に入力された科目(18科目のうちからランダム・60行まで) の科目名・合計金額を科目一覧表に表示したいです。 例:全18科目18行の表示ではなく   清算書に交通費と通信費しか入力されていなければ2行の表示 よろしくお願いいたします。

enjoyeveryday
質問者

補足

清算書は下記のようなレイアウトです。 日付 科目 用途 区間1 区間2 金額 備考 2/17 交通費 電車代 東京 新宿 190  ※科目は別シートにある科目名一覧からリスト選択 ※用途はindirect(科目)で別シートにある科目別用途名一覧からリスト選択  (交通費の用途名は電車代・バス代・飛行機代・・など) 科目一覧表は下記のようなレイアウトです。 交通費 ¥5,000(sumif/dsumを利用) 交際費 ¥0 通信費 ¥1,000 ....(18行) ここまではできております。

  • layy
  • ベストアンサー率23% (292/1222)
回答No.3

精算書にはどの科目が記載されるか特定でない。 精算書のC5セルには交通費だったり事務費だったりする。 科目一覧の交通費や事務費欄横には、この科目というのが決まるのでSUMIF数式で求めることができている。 ならば 精算書に記載した科目が科目一覧のどの位置にあるか検知しその横の金額を取得、そんな感じでどうでしょうか。 VLOOKUPのような検索に使う関数を探す。 具体的に 別シートのどのセルにあるか知りたい、と例を挙げると回答は出そう。 関数の見つけ方わかれば出来るところまでやってみる。

enjoyeveryday
質問者

お礼

ご回答ありがとうございました。 C列に60行までランダムな順で入力される科目を集計して 表にしたいのですが、 18科目から入力されたものの科目名とその合計金額の表示 こちらの方法を模索しております。 説明不足で申し訳ございません。 どうぞよろしくお願い申し上げます。

enjoyeveryday
質問者

補足

説明不足で大変恐縮です。 layyさんのおっしゃるとおり ・どの科目が記載されるか特定でない ・18科目の一覧表にsumif/dsum(dcount)で合計額を表示 こちらまではできております。

  • sarugetu
  • ベストアンサー率65% (23/35)
回答No.2

sumifを使用して、 交通費 ¥5,000 交際費 ¥0 通信費 ¥1,000 のように18科目を計算した後、 合計を出すのでは駄目なのでしょうか? 完成イメージをもう少し教えていただければ検討させていただきます。

enjoyeveryday
質問者

お礼

回答ありがとうございます。 18科目を記載していただいたように表示するところまではできたのですが、 0円のものは非表示にしたいとリクエストをもらい考えあぐねております。 何かいいお考えはありますでしょうか。

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

例えばA1セルに日付、B1セルに科目、C1セルに用途、D1セルに金額の文字があり2行目から下方にそれぞれのデータが入力されているとします。そこで集計したい科目名をG1セルに入力するとしてH1セルにその合計金額を表示させるとしたらH1セルには次の式を入力します。 =SUMIF(B:B,G$1,D:D)

enjoyeveryday
質問者

お礼

ご回答と関数式をありがとうございました。 レイアウトのイメージはそのような並びです。 sumif, dsum, dcount関数を使ってGに予め18科目の場所を用意しておき、 ランダムに入力された科目の合計結果が表示、入力されない科目は0または空欄表示。 そこまではできたのですが、 例えば入力された科目だけをGに上から表示(入力されない科目は非表示)させることは関数でできるでしょうか。 別シートに科目名一覧(並びは昇順ではない)があり、科目の入力はこのリストを参照しています。

関連するQ&A

  • DSUM関数で、集計機能の集計結果を除外する

    小さな会社の事務をしています 特に資格なども持っていない、パソコンもエクセルも素人で事務をやるのも初めてです。 会計士さんに提出する出納帳とは別に、科目ごとの金額をわかりやすく分析した資料を作ってほしい、というような指示を受けました。正直どういうものを作ればいいのかよくわからないのですが、まかせると言われてしまったため素人なりに考えて 1シート目 実際の出納帳のくくりよりも詳細な項目(科目)別けで伝票内容を記入し、月毎で科目別にソート&データの集計機能で集計してある出納帳 2シート目 DSUM関数を使って1シート目から参照し、項目別の合計を再度求める ↑の数値を参照して会計士に提出するのと同様の科目でくくり合計、これらを横に並べた表、というのを作りました 1シート目は縦スクロールの出納帳 2シート目の見た目は 項目 (会社名)文具買掛  ¥xxx 項目  プリンター用品   ¥xxx 項目  PC用品      ¥xxx           事務用品費 ¥xxxx ーーーーーーーーー--ーーーーーーーーーーーーーーーーーーーーーーーーーーーー ↑DSUM関数で1シート目から参照して合計)    ↑左列の数値をオートサムで合計 というような風です。 気になるのは参照する1シート目から『△ 集計』の行を除外する方法がわからずどうしても結果が2倍(△1+△2+△3+集計結果(△1+△2+△3))になってしまうので、無理やり式の最後に÷2を入れて辻褄をあわせたのですがこれで問題ないのかということです。 自動で書き込まれる『集計』の文字をエクセルは認識しないようで検索文字列を『△ 集計』と指定すると見つけることが出来ず、『△』で指定すると何故か集計結果まで含めてしまいます (1シート目と2シート目で同じ合計値をそれぞれで求めてるのは、数値を見比べて気づかず式を消してしまっていたりズレていたりするのを見つけるのに良いと思うのでそのままにしたいです。) またDSUM関数を使うために、2シート目では項目の行がいちいち入っていますが(実際は目立たないよう小さなフォントで薄い色にしてありますが)もっとスマートな方法はないかということ。 もちろんDSUM関数にこだわりがあるわけではないので(ネットで調べたらこれが出てきました)もっと綺麗なやり方があればそれを教えていただけると嬉しいですし、そもそも表のつくりがまずいなどアドバイスがあれば教えて下さい。 わかりにくい文章になってしまいましたが読んでくださってありがとうございます、よろしくお願いします。

  • Excelでの集計の処理について

    ExcelでSUMIF関数とDSUM関数で集計処理の時間は違いますか? ちなみにExcelのバージョンはは2000です。 調べたことのある方は教えてください!

  • エクセルで集計したいのですが・・・

    関数は少しわかりますが、マクロは分かりません。 今回は集計シートの集計数字を元シートに入力して、更に元シートにない項目を元シートの項目行に項目名を入れて集計数字を入れたいのです。 ただ、集計だけであれば「sumif」関数を使えば出来るのですが、元シートにない項目名を探し出して入力する方法がわかりません。教えてください。よろしくお願いします。 元シート  A  B       1 aaa 2 bbb 3 ccc 4 ddd 5 6 7 集計シート 項目 数量 1 bbb 1 2 aaa 2 3 ddd 1 4 eee 1 5 fff 1 6 ccc 2

  • エクセル2003の「串刺し集計」について教えてください。

    年度別の売上等の集計表を作っています。 月毎にシート名を「0604」、「0605」・・・とし、半期毎にも集計を かけたいと思っています。(0604~0609のシート間) それぞれのシートは同じ表で、B列に「曜日(月~日)」が D列には「客数」が入っています。 そこで「特定の曜日の客数」を半期毎の集計シート(0609の後)に 表示させようとして、下記のような関数を入れました。 =sum('0604:0609'!,sumif($c$2:$c$30,"月",d2:d30)) しかし、「入力された数式は正しくない」と表示されてしまい ヘルプを参照しましたが、一般的な入力時の注意だけでした。 SUMにはSUMIFを組み合わせられないのでしょうか? 参照するセルの値が変わっても、集計結果に反映される関数を 教えていただけませんでしょうか。

  • エクセル 集計のエラー

    1枚目のシートに日付、内容などの一覧があります。 2枚目のシートでそれを集計しています。 1枚目のシートの日付を消すと、2枚目で#N/Aのエラーが出ます。 シートの内容を全部消しても出ます。 一覧はどんどん足しているので、一覧の一番下の列は日付が空欄ですが エラーは出ません。 どこが違うのでしょうか? やりたいことは、このシートを空にして新たな一覧を作成して集計したいのです。 説明が下手で申し訳ありませんが教えてください。

  • エクセルでの集計について教えてください。

    こんにちは。 エクセルでの集計について教えてください。 下のように日毎の売上をエクセルで管理しています。 日付     売上金額  売上件数 2008/04/01  100000   100 2008/04/02  120000   200 2008/04/03  150000   180 2008/04/04  200000   130 2008/04/05  100000   100   : 2008/05/01  200000   100 2008/05/02  500000   650 2008/05/03  140000   200 このまま1年間分ひとつのシートで管理しようと思っていて、 別シートに月ごとの管理シートを作りたいと思っています。 月ごとの集計をする場合、合計するのはsumif関数を 使用してできたのですが、平均値がなかなか出せません。 出したいデータはその月のその日までの平均値です。 例えば上の5月3日までの売上が記入してある場合は、 5月全体の平均ではなく5月3日までの平均です。 averageif関数を使用すればすぐ出ると思うのですが、 エクセル2000なのでありません。 なにか良い方法があったら教えてください。 よろしくお願いします。

  • ACCESS 特定の集計

    サブフォームに以下のような関数で野球だけを集計するようにしたのですが、メインフォーム及びサブフォームに表示しているコードデータ毎に集計するにはどのような抽出条件を書けばよいのでしょうか? =DSum("構成金額","店情報 サブフォーム","構成項目名= 'ゴルフ '") メインフォームとサブフォームは企業コードで繋いでいます。

  • エクセルで集計

    エクセルで集計 シート1に1つの列に各支店名、2つ目の列に各商品名、3つ目の列に商品個数がランダム入力されているデータをシート2に自動で整理し集計したいのですが、2つの列の集計は関数SUMIFできるのですが、例えば、「各支店の商品個数の集計」など、「各支店の各商品の個数の集計」などの3つの列の集計方法を分かる方、いましたら教えてください。宜しくお願いします。

  • エクセル 集計 関数で・・・

    経費の集計を随時反映させていきたいのですが、 sheet1に毎日の経費を入力していて、sheet2にその項目ごとに集計を出す    A     B     C 1 ガソリン  3000    2 交通費   500   精算済 3 ガソリン  2000 4 交通費   300 5 交通費   500 sheet1には↑こんな感じです。 さらにC列のように「精算済」になった分は集計に出ない方法。 本など見て調べてはいるのですがなかなかできず困っています、、、宜しくお願いします

  • エクセルのデータ集計シートについての質問

    エクセルについて質問です。家計簿を自分で作ったのですが、一つのシートはデータを入力していく表で、もうひとつのシートは連動して科目別に集計していく表です。具体的には入力用のシートA列:日付 B列:科目(例)食費 C列:内容 D列:金額 月ごとに縦に入力していっているので、これを次の月からもE列から続いて入力していきます。集計用のシートはA列にそれぞれの科目があり、B列:1月 C列:2月・・・というようになっていて、集計はSUMIFの関数で計算しています。 しばらく順調に計算されていたのですが、入力シートのBN列以降に入力したものが連動されなくなってしまいました。 どうすればいいか教えていただけますでしょうか?

専門家に質問してみよう