グッドデザイン賞を受賞したウォーターサーバー >>

エクセル2010を使用しています。
★1のデータA列とB列が一致するものは計算してC列に合計し、
★2のデータにしたい場合の関数を教えて下さい。

初歩的なことですがすみませんどなたかよろしくお願いします。

「A列とB列が一致するものをC列に合計する」の質問画像

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんばんは!



>★2のデータにしたい場合の関数を教えて下さい。
というコトですので、一例です。
元データはSheet1にあり、Sheet2に表示させるとします。

↓の画像のようにSheet1に作業用の列を2列設けます。
作業列1のD2セルに
=IF(COUNTBLANK(A2:B2),"",A2&"_"&B2)

作業列2のE2セルに
=IF(OR(D2="",COUNTIF(D$2:D2,D2)>1),"",ROW())

という数式を入れ → D2・E2セルを範囲指定 → E2セルのフィルハンドルでずぃ~~~!っと下へコピーしておきます。

そしてSheet2のA2セルに
=IFERROR(INDEX(Sheet1!A:A,SMALL(Sheet1!$E:$E,ROW(A1))),"")
という数式を入れ隣のB2セルまでフィル&コピー!

C2セルに
=IF(A2="","",SUMIFS(Sheet1!C:C,Sheet1!A:A,A2,Sheet1!B:B,B2))
という数式を入れ、A2~C2セルを範囲指定 → C2セルのフィルハンドルで下へコピー!

これで画像のような感じになります。

※ 作業列が目障りであれば遠く離れた列にするか
非表示にしてください。m(_ _)m
「A列とB列が一致するものをC列に合計する」の回答画像4
    • good
    • 0
この回答へのお礼

ありがとうございました。
きちんとできました。
大変助かりました

お礼日時:2016/07/01 13:29

2データの A、B列が既に準備されているのであれば


C列は Sumifs関数かSumproduct関数で可能ですが
A、B列を作ると云うところから(或いは、1データに応じて変化してほしい)なら
巻数ではかなり面倒です。
ピボットテーブルで集計することを提案いたします。
    • good
    • 0

ピボットテーブルで集計すればいいと思います。


リストが用意されているなら集計機能でもいいです。
    • good
    • 0

★2のA列とB列が既知であれば、次の関数が使えるはずです。


 SUMIFS、SUMPRODUCT …前者は2007以降、後者はその前でも使えます。

★2のA列とB列を★1から生成する場合は、ピボットテーブルが使えると思います。
しかし、そのデーター数が不定となれば、そこまで予想するのは無理だと思います。
    • good
    • 0
この回答へのお礼

データー数がやはり不定のため難しいようでしたありがとうございました。

お礼日時:2016/07/01 13:30

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル【A列とB列の不一致を知りたいです】

初めまして。
お忙しい中、大変申し訳ございませんが、下記に関して、ご指導のほど、宜しくお願い致します。

***************
【例】
A列    B列

あめ    チョコ
ガム    ポテトチップス
チョコ   あめ
       ガム


という列があり、A列はA1000まで続き、B列はB3000まで続きます。
必ずしも、A列の横に同じお菓子名があるわけではありません。

そこで、A列とB列を比較し、B列にしかないもの(上記「例」ではポテトチップス)のセルに色づけ、もしくはC列に、不一致するものだけ「NG」等が記載される数式を教えてください。

お忙しい中、大変申し訳ございませんが、
何卒宜しくお願い申し上げます。

Aベストアンサー

条件付書式で、B列のセルに
「数式が」
=ISERROR(VLOOKUP(B1,A:A,1,FALSE))
で書式を設定し下にコピーすると、無いものだけが書式変更されます。

同じように、B列の隣のC列に
=IF(ISERROR(VLOOKUP(B1,A:A,1,FALSE)),"NG","")
として下にコピーしても隣にNGと表示できます。

Qエクセル 同名の場合はB列にC列の数値を入れたい!

 A列  B列   C列     D列
りんご        50    みかん
みかん        30    ぶどう
いちご        20    ばなな
ぶどう        40    りんご
ばなな        60    いちご

↑上記のような表があります。
もしA列とD列が同名であればC列の金額をB列に表示したいのですがよい関数はありますでしょうか??
おわかりの方教えてくださーい!

Aベストアンサー

>このような場合は空欄にしたいのですが・・・
B1=IF(COUNT(MATCH($A1,$D:$D,0)),INDEX($C:$C,MATCH($A1,$D:$D,0),0),"")
または
B1=IF(ESERROR(MATCH($A1,$D:$D,0)),"",INDEX($C:$C,MATCH($A1,$D:$D,0),0))

QB列の値がA列にあるかを調べる関数

excel2010を使っています。
題名の通りなのですが、B列にある値がA列にあるかを関数を使って求めたいと思います。

B列に290個、A列に259個の値が入力されていて、

・B列にあってA列にないもの
・A列にあってB列にないもの

の両方を見つけ出したいのですが、よい関数を教えてください。exact関数ではダメでした。

Aベストアンサー

C1セルに
=IF(COUNTIF(B:B,A1),"","このAはAにあってBに無い")
以下コピー
D1セルに
=IF(COUNTIF(A:A,B1),"","このBはBにあってAに無い")
以下コピー

とそれぞれ埋めて検査します。

Qエクセルで条件に一致したセルの隣のセルを取得したい

下のような「得点」という名前のシートがあります。
(「田中」のセルがA1です。)

 [ 田中 ][ 10 ][ 200 ]
 [ 山田 ][ 21 ][ 150 ]
 [ 佐藤 ][ 76 ][ 250 ]
 [ 鈴木 ][ 53 ][ 350 ]

別のシートのA1セルに、「佐藤」と入力すると、

 [ 佐藤 ]

「得点」シートから「佐藤」の列を見つけて、B1、C1に

 [ 佐藤 ][ 76 ][ 250 ]

のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。
「得点」シートでは氏名が重複する事はありません。
IF文を使うと思うのですが、いまいち良く分かりませんでした。

よろしくおねがい致します。

Aベストアンサー

こんにちは!
VLOOKUP関数で対応できます。
IF関数と併用すればエラー処理が可能です。

Excel2007以降のバージョンであれば
B1セルに
=IFERROR(VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0),"")
としてC1セルまでオートフィルでコピー!
そのまま下へコピーすると行が2行目以降でも対応できます。

Excel2003までの場合は
=IF($A1="","",VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0))

としてみてください、m(_ _)m

Q《エクセル2000》A列・B列の和を合計する関数ってありますか?

皆様こんにちは。

SUMPRODUCTは2つの列の積を合計しますが、2つの列の和を合計する関数はあるでしょうか?
これがあると今の作業がすごく便利になるんですが…。

Aベストアンサー

>実はこれの外側にSUMPRODUCTをつけて、D列との積を出し、さらに100で割りたいのです。
それは、

=(A1+B1)*D1
+(A2+B2)*D2
+(A3+B3)*D3
・・・・・
+(A10+B10)*D10

ということでしょうか。
その場合は、

=SUMPRODUCT(A1:A5+B1:B5,D1:D5)/100

とします。
ただし、この式だと、A列かB列に文字(数値として認識出来ないもの)が入力されているとエラーになってしまいます。
(空欄はOK)
そのエラーも回避する(数値として認識出来ない場合は0とする)には、

=SUMPRODUCT(IF(ISNUMBER(A1:A5),A1:A5,0)+IF(ISNUMBER(B1:B5),B1:B5,0),D1:D5)/100

と入力して、[Ctrl]と[Shift]を押しながら[Enter]を押して決定します。
(数式の両端に「{}」が付いて配列数式になります。)

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

QエクセルでA列B列C列の重複するレコードのみを表示

エクセルのA列とB列とC列で重複するレコードのみを抽出して別の列に表示させたい。

エクセルのA列とB列とC列にそれぞれ1000行くらいのデータがあります。
それぞれの列内には重複レコードがあります。

この条件の中で

「A列とB列とC列に重複するデータすべて」

を抽出したいのですが、どんな方法がありますか。
抽出されたデータで重複レコードの場合は1件のみで表示したいです。

よろしくお願いします。


  A   B   C   抽出 
1-001-002--002--002
2-002-002--005--007
3-003-007--007--008
4-007-008--008--011
5-008-008--010
6-008-010--011
7-011-011--012
8-013-014--013

Aベストアンサー

式が複雑になるということはそれだけ分かりにくく、計算が重くなるということです。出来るだけ作業列を使ってわかりやすく処理することが肝要と考えます。
例えばA,B,C列の2行目からお示しのようなデータがあるとします。
D2セルには次の式を入力して下方にオートフィルドラッグします。

=IF(AND(COUNTIF(A$2:A2,A2)=1,COUNTIF(B:B,A2)>0,COUNTIF(C:C,A2)>0),MAX(D$1:D1)+1,"")

D列にはA,B,C列に共通して含まれるデータがあれば上から順に番号が付けられます。その際にもしもA列でダブったデータがある場合には最初に出てきたデータに番号が振られます。

お求めのデータはE列に並べるとしてE2セルには次の式を入力して下方にオートフィルドラッグします。

=IF(ROW(A1)>MAX(D:D),"",INDEX(A:A,MATCH(ROW(A1),D:D,0)))

D列が目障りでしたら列を非表示にすればよいでしょう。

QEXCELで別のシートのデータを参照して返す方法

ちょっとしたことなのですが、うまく式が書けなくて悩んでいます。

作業用のシート1と参照用のシート2があり、
シート1のA列には
 あおき
 あべ
 いぐち
 いはら
などと文字列(名前)が入力されています。
こちらは今度の野球のスタメンだと思ってください。

シート2にはA列とB列があって、
わたなべ 55
いぐち  43
あおやま 67
いはら  41
などと、名前:背番号が羅列されています。こちらが参照用の全選手の背番号リストだと思ってください。

ここで、 シート1のB列に、A列の名前に対応した背番号を返したいのです。
なので、シート1のB列に
IF(シート1のA列の値=シート2のA列のいずれかの値)だったとき、
適合したシート2の行のB列の値を表示する
という式を入れたいのですが、どのように式を書けばよいでしょうか。

すみませんがどなたか教えてください。

Aベストアンサー

私もその場合はVLOOKUP関数を使用しています。

「B1」=VLOOKUP(A1,Sheet2!$A:$B,2,0)

QExcelで条件が一致する場合、○印で表示する

Excelの関数についての質問です。

(列A)    (列B)   (列C)
相原久美子   相原久美子  ○
高橋 聡子   上田かなえ  ○
上田 かなえ  竹中聡美
武田 良子

列Bにデータを入力した際、列Aに同じものがあれば○を、
そうでなければ何もしないという関数を作成したいと思います。

今のところはCOUNTIF関数を使い、
=IF(COUNTIF($A$1:$A$4,B1)>0,"○","")
のように組んでいますが、氏名の間に空欄を含んだ場合の処理が
うまくいきません。

何か良い方法はありませんでしょうか。よろしくお願い致します。

Aベストアンサー

こんにちは
作業用セル列Dを作って列Aの空白を処理する例です。
D列に以下の関数を入れて空白を取り除きます。
=SUBSTITUTE($A1," ","")

C列に質問者さんの式を変形して入れます。
=IF(COUNTIF($D$1:$D$4,B1)>0,"○","")

Qエクセルで、列内が同じ名前を集計する方法は?

エクセルで以下のような表を作成したとします。

      A列   B    C    D
 1行   名前   項目   金額
 2    すずき  あいう  100
 3    すずき  かきく  200
 4    すずき  さしす  450
 5    さとう  あいう  150
 6    さとう  さしす  200
 7    はやし  あいう  250 
 8    はやし  かきく  170
 9    はやし  たちつ  980

B列の名前が同じ者の、金額の合計をD列に出したいのです。
D4に すずきの合計 750、D6にさとうの合計 350、
D9にはやしの合計 1150  というふうに。
全部で100人分位、データ行数は15000ほどあるのですが
これをさっとできるようにはどのようにしたら良いのでしょうか?

Aベストアンサー

次の方法は如何でしょうか。
D2に=IF(COUNTIF(A:A,A2)=COUNTIF($A$2:A2,A2),SUMIF(A:A,A2,C:C),"")を入力→D2を選択→フィルハンドル(D2セル枠右下の■)をダブルクリック
但し、C列途中に空白がある場合、その直前までしかコピーされませんので、空白セル前のセルを下方向にコピー後、同様にフィルハンドルをダブルクリックし下さい。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング