エクセル2003の使い方で質問です

このQ&Aのポイント
  • エクセル2003の使い方について質問があります。説明がわかりにくいため、具体的な要点をまとめていただけますか?
  • エクセル2003の使い方について質問があります。特に、「(株)あ」~「(株)ん」の各社の支社ごとの合計金額を簡単に表示する方法について教えていただきたいです。
  • エクセル2003の使い方について質問です。各会社の支社ごとの合計金額を一括で表示する方法についてアドバイスをいただけますか?
回答を見る
  • ベストアンサー

エクセルの使い方で質問です。

エクセル2003の使い方で質問です。説明の仕方がよくわからなかったので、下記のようにしました。 少しわかりにくいかと思いますがよろしくお願いします。   A      B    C   D  E  1 (株)あ 東京支社 \130 2 (株)あ 東京支社 \100   3 (株)あ 東京支社 \120  (1) 4 (株)あ 大阪支社 \110  (2)  (3) 5 (株)い 九州支社 \140 6  (1)B列の「(株)あ」の「東京支社」の小計をD3へ表示(¥350)。 (2)B列の「(株)あ」の「大阪支社」の小計をD4へ表示(¥110)。 (3)A列の「(株)あ」の金額について、合計をE4へ表示(¥460)。 A列には「(株)あ」~「(株)ん」まで続いており、 各々の会社のB列とC列には様々な支社(会社ごとに支社の数は違うとします)と金額があるとして、 「(株)あ」~「(株)ん」までの(1)(2)(3)を簡単に表示させる方法がありますでしょうか。 SUMで一つ一つ合計を出そうとしましたが数が多く大変でした。 ご教授願います。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 まず、D1セルに次の数式を入力して下さい。 =IF(SUMPRODUCT(($A$1:$A1=$A1)*($B$1:$B1=$B1))=SUMPRODUCT((OFFSET($A$1,,,MATCH("゛",$A:$A,-1))=$A1)*(OFFSET($B$1,,,MATCH("゛",$A:$A,-1))=$B1)),SUMPRODUCT(($A$1:$A1=$A1)*($B$1:$B1=$B1)*$C$1:$C1),"")  次に、E1セルに次の数式を入力して下さい。 =IF(AND(COUNTIF($A$1:$A1,$A1)=COUNTIF($A:$A,$A1),$A1<>""),SUMIF($A:$A,$A1,$C:$C),"")  続いて、D1~E1の範囲をコピーして、同じ列の2行目以下に貼り付けて下さい。  以上です。  尚、実際の表において、1行目には項目名等が入力済みで、数式を入力出来ない場合には、数式中の $A1の部分を$A2に、 $B1の部分を$B2に、 $C1の部分を$C2に、 それぞれ変更した数式を、2行目のセルに入力して下さい。($A$1、$B$1、$C$1の部分は変更しないで下さい)

judo123
質問者

お礼

驚きです。 数式をコピペしたら、理想のデータが出て来ました。 かなりの時間節約になりました。 関数を少し勉強しようと思います。 的確なご回答ありがとうございました。

その他の回答 (4)

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

以下のような数式がわかりよいかもしれません(添付画像参照)。 D2セル =IF(AND(A2=A3,B2<>B3),SUMPRODUCT(($A$2:A2=A2)*$C$2:C2),"") E2セル =IF(AND(A2<>A3,B1<>B3),SUMPRODUCT(($A$2:A2=A2)*$C$2:C2),"")

judo123
質問者

お礼

「(株)あ」の「大阪支社」の「支社別計」の「D5」と 他D7にも支社の合計が欲しかったです。 説明わかりにくくてすみません。 添付画像ありがとうございます。 私も質問時には添付画像で投稿したいと思います。 大変わかりやすいです。 ご回答ありがとうございます。

  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.3

ピボットテーブル (1)(2)(3)だけじゃなくて全ての合計を一覧表にして求めることができます。  データの範囲を指定して、  データ(D) → ピボットテーブルとピボットグラフ レポート(P)  Excelのリスト/データベース、ピボットテーブル が選ばれていることを確認して「次へ」  データ範囲が間違いないことを確認して「次へ」  新しくシートを作ってそこへ表を置くなら「新規のワークシート」を選択、表をデータの横などに並べる場合は「既存のワークシート」、を選択してピボットテーブルを作成する左上のセルを選択して「完了」  シートの上に空の「枠」と「ピボットテーブルのフィールドリスト」、場合によってはピボットテーブルのツールバーが表示されます。  「ピボットテーブルのフィールドリスト」から会社名に当たる項目を「枠」の一番左にドラッグ&ドロップする。  「ピボットテーブルのフィールドリスト」から支社名に当たる項目を「枠」の会社名を投げ込んだ場所と「ここにデータアイテムをドラッグします」の境目にドラッグ&ドロップする。  「ピボットテーブルのフィールドリスト」から金額に当たる項目を「枠」の「ここにデータアイテムをドラッグします」にドラッグ&ドロップする。 お疲れ様でした。 こんな感じで関数を使うことなく簡単に合計を求めることができます。

judo123
質問者

お礼

ご丁寧に手順まで書いて下さり大変助かります。 やってみましたところ、簡単&便利さに驚きました。 ありがとうございます!

回答No.2

ピボットテーブルを使うと簡単では? http://hamachan.info/excel/piboto.html 他、Google で ピボットテーブル をキーワードで検索し分かりやすいところ見て応用してみてください。 行側に2つ項目入れるなんてこともできます。

judo123
質問者

お礼

ピボットテーブル・・・。 はじめて知りました。便利そうですね。 勉強になります。 ありがとうございます。

  • kerneru
  • ベストアンサー率37% (45/120)
回答No.1

SumではなくDSumという方法があります。 http://kokodane.com/kan9.htm

judo123
質問者

お礼

DSUMというのがあるのですね。 使い方によっては参考になりそうです。 覚えておきます。 早速のご回答ありがとうございます。

関連するQ&A

  • Excelで条件に合うデータをピックアップして合計を求めたい

    下記のような条件で合計を求めたいのですが、 SUM関数やSUMIF関数では、求めている合計が得られません。 例) 行/列 A   B    C  1|  No. 金額   氏名 2|  1  200,000  A 3|  1  200,000  B 4|  1  200,000  C 5|  2  150,000  A 6|  2  150,000  D 7|  3  180,000  B 8|  3  180,000  D 9|  3  180,000  E 10| 小計  上記のようなデータがあります。 B列には、Noごとに、それぞれ同じ金額が重複して入力してあります。 ここから、Noの最初の金額である200,000+150,000+180,000=530,000 という合計を10行目に求めたいのです。 現在は、自分でNoを確認しながら、その都度、 合計したいセルを選択して合計を求めているのですが、 データ数が多いため、何か別の方法がないかと思案しております。 どなたか、アドバイスの程、宜しくお願いします。

  • エクセル 名簿以外のを抽出するには

    エクセルについて教えてください。 元データシートがあります。データの行列は結構な数が入っています。    A    B     C      D     E     F     G ・・・・・ 1 東京  山田  小計  ・・・  ・・・  ・・・  ・・・  ・・・・・ 2 埼玉  菊池  小計 3 栃木  中山  平均 4 茨城  岸本  小計 5 東京  村井  合計 といった具合にいくつものデータがあります。 抽出データシートに「名簿シート以外の人物」でなおかつ「元データのC列が"小計"と記載されているもの」だけを抜き出したいのです。 名簿シート(今後増減あり)    A    B       1 埼玉  菊池   2 東京  山田   3 ・・・   ・・・   ・ ・ 抽出データシート    A    B      C     D      E     F     G ・・・・・ 1 茨城  岸本  小計 2 ・・・   ・・・  小計 3 ・・・   ・・・  小計 ・ 関数で可能でしょうか? 難しいなら、せめて、名簿以外の人物だけを抽出したいです。 また、元データや名簿が更新されるごとに抽出データが自動的に「名簿以外の人物」と 「C列が小計」のものだけを抽出したいのですが、関数以外に何かありますでしょうか? よろしくお願いいたします。

  • 【エクセル】集計機能に関する質問です。

    お世話になります。 例えば、 A列 B列 C列  D列 CD 支店 価格  メーカー名 0001 東京 3,000  ソニー 0001 東京 2,980 CANON 0001 東京 1,200 ソニー 0002 大阪 1,100  東芝 とあったとして、A列のCDを基準にC列の「合計」について集計したとします。 その際、他の項目についてもエクセルの集計機能を使って、 1.B列についての情報をそのまま集計行に表示させる方法(この場合、CD0001なら東京、0002では大阪と表記させたいです。)、 2.D列について、0001では、のべ数(ソニー2のCANON1つを合わせた3つ)ではなくて、対象列の種類数(ソニーとCANONの2社という意味)を表示させる方法、 をやりたいのですが、簡単そうに見えてもうまくいかなくて、困っています。 関数なら可能のような気がしますが、数万に及ぶ行数に対応するのも大変なので、 集計機能で一括できれば、最高です。 お手数ですが、ご指導よろしくお願い致します

  • エクセル 名簿の人だけを関数で抜き出す方法

    エクセルについて教えてください。 元データシートがあります。データの行列は結構な数が入っています。    A    B     C      D     E     F     G ・・・・・ 1 東京  山田  小計  ・・・  ・・・  ・・・  ・・・  ・・・・・ 2 埼玉  菊池  平均 3 栃木  中山  平均 4 茨城  岸本  小計 5 東京  村井  合計 といった具合にいくつものデータがあります。 抽出データシートに「名簿シートに載っている人物」でなおかつ「元データのC列が"小計"と記載されているもの」だけを抜き出したいのです。 名簿シート(今後増減あり)    A    B     1 東京  山田 2 栃木  中山 3 茨城  岸本 ・ ・ ・ 抽出データシート    A    B      C     D      E     F     G ・・・・・ 1 東京  山田  小計  ・・・  ・・・  ・・・  ・・・  ・・・・・ 2 茨城  岸本  小計 ・ ・ ・ 関数で可能でしょうか? 難しいなら、せめて、名簿に載っている人物だけを抽出したいです。 また、元データや名簿が更新されるごとに抽出データが自動的に「名簿に載っている人物」と 「C列が小計」のものだけを抽出したいのですが、関数以外に何かありますでしょうか? よろしくお願いいたします。

  • エクセル関数の質問

    よろしくおねがいします。 以下のようなA列B列に数字が何行もあるのですが、 A列の数字(時間なのですが)を二つを別シートに記入すると A列の二つ分の期間を参照してB列の数字の合計や個数を計算したいのですが、 VLOOKでは期間分の値を計算できないので 何かいい方法はないでしょうか? A        B 1000      1 2000     -5 3000      8 4000      1 5000      3 6000      5 7000     -3 8000      2 9000      3 別シートにA列の数字を下記の例のよう二つに入力すると A列の期間を参照してB列の値を計算して B列に全合計 C列に+の合計 D列に-の合計 E列に+の個数 F列に-の個数 を表示させる。 <例1> A   B(全合計) C(+の合計) D(-の合計) E(+の個数) F(-の個数) 1000 5000  8        13        -5         4        1 <例2> A   B(全合計) C(+の合計) D(-の合計) E(+の個数) F(-の個数) 6000 9000  7        10        -3         3        1 のような感じで計算したいのですが わかりづらくてすいませんが、分かる方がいたらご教示お願います。

  • SUBTOTAL関数の不思議

    SUBTOTAL関数で期待する合計が出せません。 A列   B列   C列   D列 品名   数量   単価   金額 A     1    100    100 B     2    200    400 C     3    300    900 小計               0 →ここが期待どおりでない D2セルの式は =IF(A2="品名",SUBTOTAL(9,INDIRECT("D$2:D"&ROW()-1)),B2*C2) でD5までコピーしました。 つまりA列が"小計"でないときは数量×単価を、"小計"と入力されていたらD2:D4をSUBTOTALで集計するつもりなのに結果が0になってしまいます。 ちなみにD5に =SUBTOTAL(9,D2:D4) と手入力しても結果は0でしたが、D列に金額を直接入力すれば小計は正しく表示されます。 理由がおわかりの方、教えてくださいませんか

  • エクセル関数について教えてください!!

    エクセル関数について教えてください!! エクセルファイルに以下のようなデータがあります。 A列 B列 C列 あ  A10 100  あ  A10 110 あ  B10 120 い  C10 100 い  D10 100 う  E10 100 あ  B10 120 い  C10 100 A列:販売店 B列:コード C列:売り上げ金額 (合計8000件程度) 販売店毎での売り上げ金額を求めたいのですが、B列のコードが重複しています。 販売店+重複コードは1つに纏めての金額を求める関数を教えていただけますでしょうか。 イメージ あ  A10 210 あ  B10 240 い  C10 200 い  D10 100 う  E10 100 よろしくお願いしますm(_ _)m

  • エクセルの順位抽出について

    Sheet1のA列にコード、B列に商品名、C列に分類 D列に売上数、 E列に売上金額を入力した一覧表があります。 A_1:1000 B_1:牛肉 C_1:食品 D_1:20 E_1:3000 A_2:1050 B_2:お茶 C_2:飲料 D_2:18 E_2:3010 A_3:2000 B_3:鉛筆 C_3:文具 D_3:12 E_3: 900 A_4:2050 B_4:お米 C_4:食品 D_4:12 E_4:9010 A_5:3000 B_5:牛乳 C_5:飲料 D_5:25 E_5:2000 A_6:3050 B_6:定規 C_6:文具 D_6:28 E_6: 700 中略 A_300:10000 B_300:肉まん C_300:食品 D_300:38 E_300:9000 1.食品対象で売上金額の上位20のコードをSheet2のA列に表示 2.全商品対象で売上金額の上位20のコードをSheet3のA列に表示 上記の様な抽出をしたいのですがどの様な関数を使用すれば良いでしょうか? (オートフィルタを使用してのコピペという手作業をなくすためにSheet1の内容が更新されれば自動でSheet2,3の内容も更新されている のが希望です) よろしくお願いします。

  • (エクセル)数値だけ合計したい

    複数のセルに入力されている数値だけを抽出し、合計したいと思います。   A     B    C    D    E    F    G 1 合計金額 金額1  金額1理由 金額2  金額2理由 金額3  金額3理由 2      1000円   菓子  3 1500円  1000円   菓子   500円   飲料 4 1520円  1000円   菓子   500円   飲料   20円   消費税 以上のようにA列に合計金額を計算させる数式を考えています。 (ルール) ・B列とC列、D列とE列、F列とG列はセットです。例えば、B列には入力されているが、C列は空白ということはない ・B列とC列→D列とE列→F列とG列の順に入力されていく ・2行目、3行目のように、常に金額が3つとも入力されているとは限らない ・金額が入力されているB列、D列、F列には、「○○円」と「円」も一緒に入力されている (やりたいこと) A列に合計金額を反映させないのですが、以下のように規制したいです (1)2行目のように、金額が1つだけの場合(B列とC列しか入力されていない場合)は、合計金額は空白セルにする (2)3行目、4行目のように、金額が2つ以上の場合(D列とE列や、F列とG列にも入力されている場合)は、合計金額を反映させる (3)合計金額は「○○円」と「円」も一緒に反映させる (考えたこと) B列の金額とB列+D列+F列の合計を比較し、同じならA列は空白、違う場合はB列+D列+F列の合計をA列に反映させるようIF関数を使えばいいのではないか、と考えました。 そこで、まずB列+D列+F列の合計を出す関数を作ってみたのですが、うまくいきませんでした。 =SUM(SUBSTITUTE(B2,"円","")*1,SUBSTITUTE(D2,"円","")*1,SUBSTITUTE(F2,"円","")*1) とすると、金額が3つとも入力されていればいいですが、一つでも空白セルがあると、#VALUE!とエラーになってしまいます。 SUMPRODUCTを使用してできるかと思いましたが、同じ結果でした。 どうすれば、思っているようになるのでしょうか。 ご存知の方がいましたら教えてください。 よろしくお願いします。

  • EXCELで任意の文字を指定したい

    教えてください。 EXCELでIF関数を使っていて E列にB列のコードが「ー」があればD列。 「ー」がなければA列。を表示させるという関数を作りました。  =IF(B2="*-*",D2,A2) 作成したのですが、すべてA列が表示されてしまいます。 「ー」がある時はという表現はどのようにしたらいいのでしょうか? A    B    C    D     E 1 県   コード   数量  県コード   最終 2 滋賀 22222-001 100 00000777 00000777 3 東京 33333-002 200 00000888 00000888 4 京都 44444-003 300 00000999 00000999 5 大阪 55555 400 大阪 6 埼玉 66666 500         埼玉 

専門家に質問してみよう