• 締切済み

エクセルで人ごとの計算

初心者の質問ですがよろしくお願いいたします 10×10ぐらいの表に人名と売上金が書いてあるものの 人別に売上金の合計を出すのはどうすればいいのでしょう? よろしくお願いいたします

みんなの回答

noname#95859
noname#95859
回答No.3

仮に、こんな表であるとして考えます(表1) 日付 100 200 300 2007/2/2 A B C 2007/2/3 B A C 2007/2/4 C A B 2007/2/5 D A B A,B,Cは、人の名前 このままでは、どうしようもないので、下記の手順で所謂、データベースの形式に変換します。 手順1 名前の右となりののセルに金額を入れます(表2) 2007/2/2 A 100 B 200 C 300 2007/2/3 B 100 A 200 C 300 2007/2/4 C 100 A 200 B 300 2007/2/5 D 100 A 200 B 300 手順2 縦につなぎ合せます(表3) 日付 名前 金額 2007/2/2 A 100 2007/2/3 B 100 2007/2/4 C 100 2007/2/5 D 100 2007/2/2 B 200 2007/2/3 A 200 2007/2/4 A 200 2007/2/5 A 200 2007/2/2 C 300 2007/2/3 C 300 2007/2/4 B 300 2007/2/5 B 300 小生は、当初、こんな表であろうと、想像しました。 こうしてできた表に対し、Pivotテーブルを使って、 行に「名前」、データに金額をドラッグします。 結果は、下記のようになります(表4) sum 名前 合計 a 4500 b 4500 c 4500 d 4500 e 4500 f 4500 g 4500 h 4500 i 4500 総計 40500 以上は、マニュアルでの操作ですが、これを一気にマクロにやらせるには、下記のプロシージャを VBA editor画面にペーストしてください。 Sub Macro1() Sheets("Sheet2").Cells.ClearContents Sheets("Sheet3").Cells.ClearContents Sheets("Sheet1").Select area = Sheets("Sheet1").UsedRange.Address myArray = Range(area).Value r = UBound(myArray, 1) '縦の行数 c = UBound(myArray, 2) '横の列数 Sheets("Sheet2").Select Cells(1, 1).Value = "Date" Cells(1, 2).Value = "名前" Cells(1, 3).Value = "金額" Count = 1 For j = 2 To c For i = 2 To r Count = Count + 1 Cells(Count, 1).Value = myArray(i, 1) Cells(Count, 2).Value = myArray(i, j) Cells(Count, 3).Value = myArray(1, j) Next i ' 縦 Next '横 myArea = Worksheets("Sheet2").UsedRange.Address ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:=myArea, TableDestination:="", TableName:="PivotTable1" ActiveSheet.PivotTables("PivotTable1").AddFields RowFields:="名前" With ActiveSheet.PivotTables("PivotTable1").PivotFields("金額") .Orientation = xlDataField .Name = "sum" .Function = xlSum End With ActiveSheet.Name = "Pivot" Cells.Select Selection.Copy Sheets("Sheet3").Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone Application.DisplayAlerts = False Sheets("Pivot").Delete Application.DisplayAlerts = True End Sub --------------------------------- ピボットテーブルの他に、手としては、エクセルメニュの「データ・集計」もありそうです。 表3に対し、準備として、名前で並び替えをしておきます。 範囲を選択した上で、「データ、集計」を選択。 グループの基準:名前 集計の方法:合計 集計するフィールド:金額 現在の集計・・・にチェックマーク 集計行をデータ・・にチェックマーク これで、OKを押すと、求めることができます。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

いつも質問を見て思うのですが、質問者は、擬似実例でも質問に挙げて、質問してください。 というのも (1)関数、VBAなどによる回答は、具体的に行、列を決めないと(例としての、)答えを上げられないからです。 言葉による説明で判るぐらいのレベルの方なら、ここに質問しないでも、自分でWEB・本なりを調べて、解決するか、細部の質問になるはずです。 (2)回答者が標準で予想した点が、少し違うと、全面的にその方法がダメと言う場合も有りますから。 (3)質問内容を適切に表現する知恵は、ビジネスや学術においても大切です。これができるようになれば、解決法は自ずと出てきます。 >10×10ぐらいの表 10行・10列の表のこと? または100行のデータ?。 あいまいな表現です。多分この問題の解法に影響しないと思うが。 ーーー 2つ問題があって (1)「人」の名を重複なく、シートにリストアップする術。 (2)その右セルに、その人の名が出ている、売上高を集計して セットする術。 (2)の回答が載る場合が多い。人力で人名を拾って入力するなら 、知恵は要らないが、これも(2)に劣らず、質問事項のはず。 (2)は ・SUMPRODUCT ・配列数式 ・VBA ・Dsumは使いにくい ・ピボット・テーブル(お勧め) ・集計(ソート必要) などあります。 こういうエクセルの用語を知れば、後は自力でできるのですか? そうでなければ、エクセルのリスト形式(判らなければ調べること)で、例示データを作って、補足してください。

samidare55
質問者

補足

ご回答ありがとうございます そうですよねえ、解りにくいですよねえ。おっしゃるとおりです 表はA列に日にちがあって1行目に金額があります その中に名前が振ってあってその名前ごとの合計を出したいんです B2=田中 C4=佐藤・・・・とか書いてあり 1行目にB1=10、C1=15・・・となってます これってまず最初に名前の次のセルに数値を計算して隠しておくほうが やりやすいんでしょうか? システムが多分解ってないと思いますが よろしくお願いいたします

全文を見る
すると、全ての回答が全文表示されます。
noname#95859
noname#95859
回答No.1

いろいろな方法があります。 (1) =sumif(条件範囲、条件、値の範囲) (2)人の列に関して、ソートした上で、目で追って、    sum関数で合計を求める (3)PIVOTを使って、人に関して、合計を求める 色々な条件があるでしょうから、PIVOTが一番良いのではないでしょうか。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルの計算方法で困っています

    エクセル2010についてご質問です! エクセルで会社の簡単な売り上げ表を作りたいと考えております。 そこで日々の売上をAの縦列で入力で足し算して、Bの縦列で入金の為の引き算をしてCの列で合計を出すのはどのように すればいいですか?超初心者ですよろしくお願いいたします。

  • EXCELでの計算式を教えてください

    例えばこのような表があったとして 会社名  売上   商品名 A社   1,000   りんご B社   2,000   みかん C社   5,000   なし A社   2,000   りんご B社   1,000   りんご C社   4,000   りんご 商品名りんごでフィルタした場合、subtotal関数を使用すれば、りんごだけの売上合計を計算できますよね。 さらにりんごでフィルタした時に、A社だけの、りんごの売上合計をだしたいと思っているのですが、どのような計算式を入れれば良いのでしょうか?

  • エクセルの計算式を・・・

    初歩的な質問ですみません。 エクセル売上表を作り、計算式を入れたのですが そうすると売上がない人のところはゼロって自動的に入ってしまいますよね。 このゼロを見えないようにしたいのですが何か方法はありますか。 教えてください。

  • Excelの複数表の計算方法について

    Excelの関数を利用した計算について、教えてください。 シート1と2に、並び順が違う、以下のような表があります。 社員番号と氏名、売上の列があり、30人程ずつ、横に4つの表が並んでいるような形です。(合計約120人の表) シート3に、シート1と2の各人の売上を合計したものを出したいと考えています。 並び順が違うため、串刺し演算などはできません。 また、並び順を揃えたり、表を縦に繋げることも考えていません。 (他のシートに影響するため) SUMIFをやってみましたが、表が横に並んでいるためか、うまくいきませんでした。 思いついたのは、VLOOKUPでしたが、やはりうまくいきません。 手作業で計算式(例:=あ+い)を入れることはできますが、間違って足しても分からないため、関数を利用したいと思います。 何か方法があれば、と質問いたします。 何卒よろしくお願いします。

  • Excelの計算式について

    初歩的な質問かもしれませんが、うまく出来ないのでどなたかお助けいただけると幸いです。 Excelで作成した売上表があります。 この表には毎日の売上数が入力されています。 これを曜日別にグラフにしたいのですが、問題点が2点あります 1.日付及び曜日欄を手入力  → SUMIFを使って曜日別合計が出来るのですが、日にちと曜日を手入力するのがとても面倒です。(連続コピーなどを使用してはいますが) これを解決する為に自動入力表を作りました。 2.1箇所に日付を入力すると6ヶ月先まで日付と曜日が自動的に入力されます  → 曜日が計算式の結果として認識される為、曜日という文字認識されない為、SUMIF関数にて反応しません。 できれば原本として作成し、売り上げ数を入力するだけで簡単に集計が出来るようにしたいのですがどのような関数がよろしいでしょうか?

  • エクセルで計算式を固定するには・・

    エクセルで表を作成しました。 日別の商品の売り上げ計算とその期間の合計をひとつにしたものです。 掛け算と足し算の入ったものなのですが・・この表の計算式も一緒に 次回も使いたいので 固定しておきたいのですが 可能ですか? 表と式を固定する方法を教えてください。 いつも 計算式を再度 入れなおしをしていました。 また 表の作成で参考になる使い方が あれば教えてください お願いします。

  • エクセルでの計算

    売上表を作ったのですが、例えば、 セル A1 税抜き価格    A2 A1*0.05    A3 A1+A2 同じ様に計算した(セルA3と同じ)いくつかの総合計を出すと、それぞれは合っているのですが、総合計だけ+1になってしまいます。 単純に小数点以下がたされているだけだと思うんですが、 A3の計算は全てあっているのですが 総合計をあわせるにはどうしたらよいのですか?    

  • エクセル2003でのSheet計算・・・・?

    今、売り上げをエクセルで表にして計算しているのですが、 例えば、Sheet1で10月分の明細を入力し、Sheet2でSheet1での合計値を用いて、 Sheet2で反映するといったことは可能でしょうか? 知っている方は、困っているのでぜひ教えてください。

  • エクセルについて詳しい方教えてください。

    エクセル2000を使ってます。 以下の表計算について教えてください。 名前 金額 A子 3000 B子 100 C子  30 B子  300   その都度、縦に入力していき、データが1000件ほどになったら、人別に合計金額の表を作りたいです。 また、名前は入力時にはわかりますが、あらかじめは分かりません。

  • 数式を使って計算をするには

    Win.XP.SP2 エクセル2003 A列2から90まで商品名、セルBに売上数量、セルCに平均単価、セルDに売上金額、BCDを一ヶ月分として12ヶ月分の表があります。商品ごとに1年分の合計数量と合計売上金額を求めるにはどういう数式をどこに入れたらいいでしょうか。60の手習いの初心者です。教えてください。

このQ&Aのポイント
  • 初めてPC-FAXを使用した際の出力方法についての製品名MFC-J727Dを記載します。
  • Windows10の無線LAN接続環境で使用し、関連ソフトとしてWordを使用している場合の出力方法について詳しく説明します。
  • ひかり回線での通信についても解説します。
回答を見る

専門家に質問してみよう