位置情報で子どもの居場所をお知らせ

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

      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ほどあるのですが
これをさっとできるようにはどのようにしたら良いのでしょうか?

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

アンサープラス

今ですとフィルター機能を使ってもいいかもしれませんね。


バージョンアップにより、容易にデータの抜き出しや並べ替えができるようになっています。

Excel 2010 の新機能 Microsoft
https://support.office.com/ja-jp/article/Excel-2 …

A 回答 (6件)

次の方法は如何でしょうか。


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

例データ


名前項目金額
すずきあいう100
すずきかきく200
すずきさしす450
さとうあいう150
さとうさしす200
はやしあいう250
はやしかきく170
はやしたちつ980
上記以外の列に ここではE列とする
E列   F列
氏名
すずき750
さとう350
式は =SUMIF($A$2:$A$100,E2,$C$2:$C$100) 
E2,E3に名前があれば語句初歩的な関数のまま(組み合わせも必要なし)で済む
=SUMIF($A$2:$A$100,"すずき",$C$2:$C$100) でも同じ
ーーーー
問題はE列に、実際にA列に出てくる「名前」の重複のない名前の集まりをどうして持ってくるか。
このことを先に質問することの大切さを判ってないのでは。
一例として、データーフィルターフィルタオプションの設定の「重複するレコードは無視する」などを挙げておく。
    • good
    • 3

いきなり複数の条件を考えると、ややこしくなりがちですよね。


ひとつづつ考えて言って見ましょう。
まず第一条件としては、金額の合計を出す事ですから、D2セルに
=D1+C2
として、それを下方にコピーしてやると、それぞれの行の金額を順番いたして行きます。

しかしこれでは、名前の変わり目も関係なく全体を足してしまいます。
なら名前の変わり目とはどういうことか?
(質問は "B列の名前が同じ者の、金額の合計をD列に出したいのです" だけどA列ですよね??)
とりあえず、合計を出したい行のA列の値が、その下の値と違う所、っとして見ましょうか。
そうすると今度は、D2セルに
=IF(A2<>A1,C2,D1+C2)
として、それを下方にコピーしてやると、それぞれA列が同じ分だけ加算していきます。

でもこのままでは、合計以前の金額も表示されているので、合計の部分がチョット目立たなくなってしまいます。
そこで合計以外を白文字にして見えないようにしてやりましょう。
書式 → 条件付書式 を選んで、条件は
数式が   =A2=A3
として、書式で文字色を白にしましょう。
これをD2セルで設定して、やはり下方にコピーしてやると、合計以外の数字は見えなくなります。

まずは、これで見た目の表は何とかできると思います。
    • good
    • 11

ピボットテーブルが手っ取り早いと思います。



参考URL:http://kokoro.kir.jp/excel/pivottable.html
    • good
    • 5

同じ氏名が複数出現するときは「最後の行」にだけに「合計」を表示するのですか? それならばD2の式はこんな式になります


 =IF(COUNTIF(A$2:A$15000,A2)=COUNTIF(A$2:A2,A2),SUMIF(A$2:A$15000,A2,C$2:C$15000),"")
この式を下方向に15000行までコピーしてください

でも15000行もデータがあると動きが遅くなると思いますので、ピボットテーブルの方が実用的ではないでしょうか。
http://www2.odn.ne.jp/excel/waza/pivot.html
    • good
    • 4

D列ではなく、C列に小計が表示される方法ですが...


表の中のセルどれかを選択してからメニューバーの[データ]-[集計]で、[グループの基準]が「名前」に、[集計するフィールド]が「合計」になっていることなどを確認して、[OK]ボタンをクリックしてみてください。
    • good
    • 6

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

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

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

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

Qエクセルで同じ名前ごとの合計を出したいです。

エクセルで、
A1・A2に「X」という名前
A3に「Y」という名前
A4・A5・A6 に「Z」という名前が入っていて、
B列にはそれぞれ数字が入っていたとします。

そこでC列に同じ名前ごとの合計を出したいのですが、
どのようにすればよいでしょうか。
合計は、その名前の一番下の行に出したいです。
(たとえばXの合計を出す場合は、A1の行は空白でA2の行に合計を、Yの合計はA3に合計を)

よろしくお願いします。

Aベストアンサー

こんにちは。maruru01です。

A列の名前がランダムになっている場合は、C1に、

=IF(COUNTIF(A2:$A$65536,A1),"",SUMIF(A:A,A1,B:B))

と入力して、下の行へコピーします。

Q【エクセル】1列内に複数ある同項目を、各項目一つずつに絞る方法

お世話になります。

アクセスで各商品コードごとに、「各施設の価格一覧」
集計をとるための下準備(各コード、重複なく一つずつに
絞られたテーブルを作りたいです)として、
エクセルシート内で無秩序に複数ある各商品コードから、
それぞれ一つずつだけ列挙されたシートを作りたいです。

1万行を超えているので、「集計」でまとめても
意味がないだろうし、この場合の対応策について
皆目思い浮かばないのですが、
よろしければアドバイスいただけないでしょうか。

よろしくお願い致します。

Aベストアンサー

こんばんは。

Accessを使うのも結構なのですが、Excelでは、フィルタオプションを使います。

メニューから
[データ]-[フィルタ]-[フィルタオプションの設定]

 指定した範囲(O)
 リスト範囲(L) に範囲を入力
 抽出範囲は、適当に1つのセルを選択し、

 □重複するレコードは無視する(R)にチェック

 OK

で、ユニーク・データが取れます。

これは、ユニーク・データを取るためのExcelのデータベース機能です。

Qエクセルで同じ名前の人のセルの数値を合計したい

エクセルで同じ名前の人のセルの値を合計したいと思っています。

具体的には
4月      5月     6月
Aさん 100  Aさん 70  Bさん 35
Bさん 500  Bさん 60  Fさん 90
Cさん 50   Dさん 80
Eさん 120

となっています。

最後の欄にAさん○○、Bさん△△というふうにそれぞれの人の
数値の合計を求めたいのです。

関数で解決できるでしょうか?
(※ VBAは全く分かりません。。。)

どなか詳しい方がいらっしゃれば、お教え下さい。
宜しくお願い致します。

Aベストアンサー

表の範囲がA1からF5とします。
D6にAさんと入れると、E6にAさんの合計が出るようにしたい場合

E6に入れる式
=SUM(IF($A$1:$F$5=D6,$B$1:$G$5,0))

配列数式という特殊な式なので、
式の入力が終わったらCtrl+Shift+Enterで確定してください。

Qエクセルで重複しているデータの抽出のしかたを教えてください。

エクセルで重複しているデータを抽出したいのですが・・。なにぶん初心者なもので簡単な方法があればよいのですが・・。
A列に日付 B列に企業名このデータが300件ほどあります。

 Å列      B列
1月 1日    AAAA社
1月 4日   BBBB社
1月 8日   CCCC社
2月 1日   BBBB社
2月20日    DDDD社
3月 2日   AAAA社

と、あるとしてB列の企業名が重複しているものを抽出したいのですが・・・。この場合 AAAA社とBBBB社ですが。
これを簡単に抽出する方法はないでしょうか?
教えてください お願いいたします。

Aベストアンサー

企業名がセルB2からセルB300まで入力されていると仮定します。
セルC2に IF(COUNTIF($B$2:B2,B2)>1,"*","") を入力し、セルC300までコピーして下さい。すると重複したデータの二番目以降に "*" のマークが付きます。
(注) 数式を下のセルまでコピーするため、COUNTIF($B$2 は絶対参照にして下さい。

Qエクセルのセルにある同じ値が何件あるかを調べたいのですが・・

教えてください。
マイクロソフトエクセルで各セルの値が何件あるかを調べたいのです。
例えば
A1セルに4300
A2セルに1500
A3   1000
A4   4300
A5   1000
・・・・・
など同じAセルに約300近くの値が入っていたとします。
この場合
4300 は 2件
1500 は 1件
1000 は 2件など「件」はつかなくて数値だけでも助かります。
代金の返金をする時に紙幣や硬貨を用意する為に同じ値がいくつあるかが知りたいです。
オートフィルタで同じ数値だけを出す方法もありますが、こちらの方法で出来ることでしたら教えて下さい。
宜しくお願い致します。
エクセルのバージョンは古くて2002です。

Aベストアンサー

こんばんは!
色々方法はあるかと思いますが・・・

一例です。

↓の画像のようにB列を作業用の列とさせてもらっています。

B2セルに
=IF(COUNTIF($A$2:A2,A2)=1,ROW(A1),"")
という数式を入れオートフィルでずぃ~~~!っと下へコピーします。

そして、D2セルに
=IF(COUNT($B$2:$B$1000)<ROW(A1),"",INDEX($A$2:$A$1000,SMALL($B$2:$B$1000,ROW(A1))))

E2セルに
=IF(D2="","",COUNTIF($A$2:$A$1000,D2))

という数式を入れ、D2・E2セルを範囲指定し、E2セルのフィルハンドルで
下へコピーすると画像のような感じになります。

尚、数式は1000行目まで対応できるようにしていますが、
データ量によって範囲指定の領域はアレンジしてみてください。

以上、長々と書きましたが
参考になれば幸いです。m(__)m

QExcel 同じ文字の数をカウントするには?

同じ行で離れた列にある同じ文字をカウントするには
どうしたら良いのでしょうか?

例)
  A    B   C   D   E   F    G
1 A子 遅刻 aaa 遅刻 aaa ---   遅刻2 
2 B子 遅刻 bbb  --- bbb 遅刻  遅刻2
3 C子 遅刻 ccc 欠勤 ccc ---   遅刻1 欠勤1

こんな感じでG列に表示させたいのですが。。。

今日・明日中にこの様な表を作成しなければいけなくなり、とても困っています。
どなたかお知恵を貸して下さい!!

Aベストアンサー

G1 に =COUNTIF(B1:F1,"遅刻")として
セルの書式設定を "遅刻"#,##0;;
後は下にコピーします

H列に 上と同様で 欠勤を作成でどうでしょう?

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセル 同じ値を探して隣の数値をコピーする

エクセルで以下の作業を簡単にする方法を教えて下さい。

Sheet1の1行目には見出しがあり、A列とB列の2行目から下にデータが入っています。(約200行)
A列     B列
田中    13
山本     8
谷口    11
鈴木    6
佐々木    9
奥村     15




Sheet2のA列1行目から下には別のデータが入っています。(約600行)
A列
太田川
山村
田中
多賀先
鈴木
奥村
幸田




Sheet2のA列のデータと完全一致するデータ(名前)をSheet1のA列から探して、同じ名前があれば、その隣のB列にある数値をSheet2のB列に貼り付ける。
見つからない場合はSheet2のB列は空欄のままです。
Sheet2
A列      B列
太田川     
山村
田中    13
多賀先
鈴木     6
奥村    15
幸田


Aベストアンサー

シート2のB2セルには次の式を入力して下方にドラッグコピーします。

=IF(COUNTIF(Sheet1!A:A,A2)=0,"",VLOOKUP(A2,Sheet1!A:B,2,FALSE))

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

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

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

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

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

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

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

宜しくお願いします。

Aベストアンサー

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

でどうでしょうか?


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

このカテゴリの人気Q&Aランキング