お世話になります。

表題の件で 質問が御座います。

今、添付画像の左の表から 右の表に集計している所です。

・セルA1の「田中さん/毛布」は1つのセルに入力されています。
・金額は「数値」で入力されています。
・名前と一緒に入力されている品名は何が入ってるか分かりません。(色々な物が想定されます)
・A列には おそらく 千数百人の方々がいらっしゃいます。

この左の表を元に右のように「その人の合計金額」を集計したいのですが
何か便利な方法はないでしょうか?

現状ではフィルタを掛け「田中さんを含む」で抽出し、別シートに「田中さん」と入力して
その隣に「=SUM」で合計地道にを入れております。

まだ半分も終わってないようなので気が遠くなってまいりました。。。

1つのセルに2種類の情報が入っている為「=SUMIF」も使えません。。
どうにかして簡単に集計する方法は無いでしょうか?

どこか別のセルに「大久保さん」とか入れたら その隣に「大久保さんを含むB列の合計が出る」ような?

どなたか良いお知恵が御座いましたら宜しくお願い致します。
説明が不十分であれば補足致しますので何なりとお申し付けください。
何卒宜しくお願い致します。

「Excel2003 データの集計」の質問画像

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

A 回答 (8件)

A列から名前を抽出さえ出来れば、名前と金額の表を作って、SUMIF関数で名前をキーにすれば、算出できますが、問題はA列から名前だけを抽出する方法ですね。

名前が先に有ったり、最後にあったり、”さん”が付いていたり、ついていなかったりだと、これはもう手作業で分離するしかないでしょう。
分離の方法として例えば画像のように、”さん”付けで名前が先頭のものはC列に”1”、名前が先頭で”さん”の無いものは”2”、名前が最後で”さん”のあるものは”3”、同じく”さん”の無いものは”4”と手入力します。そして「データ」「フィル」「オートフィル」でオートフィルを設定し”C”列のたとえば”1”を選びます。そして、表示された表をドラッグしエクセルの例えば別シートに貼り付けます。
後は”FIND”関数で =FIND("さん",A13)+1 を1行目の空列(C1)に入れれば”4”と出ます。別の空列(D1)に =MID(A1,1,C1) の関数を入れれば、”田中さん”と出ます。各式を下にコピーします。
最後に名前があるものは、”RIGHT”関数で切り出す文字数を指定するしかないかと思います。
最後に切り出した名前と金額の表をコピ&ペで纏めた表を作ります。参考になれば幸いです。
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。

やはり手作業になりますよね。。。

なので締め切りの時間を延長してもらいました。。。

ご対応ありがとう御座いました!!

お礼日時:2009/05/21 14:59

以下の方式でできそうです。



添付画像で説明すると・・・
(1)D1に集計したい名前を入力

(2)画像の表のE1に以下の数式入力
 =SUMPRODUCT(NOT(ISERROR((FIND(D1,$A$1:$A$8))))*($B$1:$B$8))

(3)集計値がE1に表示される

あとは、必要な数だけ数式をコピペしてください。
千数百通りの名前は手入力が必要ですけど・・・
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。

やはり手作業になりますよね。。。

なので もう 諦めて締め切りを延長してもらいました。

ありがとう御座いました。

お礼日時:2009/05/21 15:04

例データA列:B列  C,D列は結果で出す部分。


A2:B8
A列    B列        C列  D列
田中さんあ1田中さん8
田中さんい2大中さん3
大中さんあ3北中さん15
北中さんい4
田中さんう5
北中さんいい5
北中さんいう6
C列にA列から重複したデータは排除したデータを作成
D2は =SUMIF($A$2:$A$10,C2&"*",$B$2:$B$10)
を入れて下方向に式を複写。
メインで無いのでC列をA列から出す部分は手作業と仮定したが、関数では一旦/までを別列に取り出し、データーフィルターフィルタオプションの設定ー重複するレコードは無視するでリストを出す。
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。

imogasiさんから説教ではなく回答をいただけただけで光栄ですw

手作業を覚悟して締め切りを延長してもらいました。

ご回答ありがとう御座いました。

お礼日時:2009/05/21 15:03

NO5です。

先程の関数が間違っていました。

 誤 =FIND("さん",A13)+1
 正 =FIND("さん",A1)+1
    • good
    • 0

>ご提示いただいた数式には無理があります。

。。
⇒ご提示の条件でご提案しただけですので「無理がある」という事ならば、何が無理なのかをご回答いただけると無理のないアドバイスができるかも知れません。
 例えば、D列を文字列置換で「さん」を削除すれば、=SUMIF(A:A,"*"&D1&"*",B:B)とすれば、名前/商品や区切り文字を意識しませが如何でしょう。
 
    • good
    • 0

では、VBAを使ってみてはどうでしょうか?



合計を求めたい名前がD1:D30に入っているとします。
その横のE列に合計を出します

Sub test()
Dim MyName(30) As String
Dim Goukei(30) As Variant
For i = 1 To 30
  MyName(i) = Cells(i, 4)
Next
i = 1
Do While Not (IsEmpty(Cells(i, 1)))
  For j = 1 To 30
    If InStr(Cells(i, 1), MyName(j)) > 0 And MyName(j) <> "" Then
      Goukei(j) = Goukei(j) + Cells(i, 2)
    End If
  Next
i = i + 1
Loop
For i = 1 To 30
  Cells(i, 5) = Goukei(i)
Next
End Sub

適当に書いていますので参考程度お願いします。
    • good
    • 0
この回答へのお礼

再登場ありがとう御座います。

>合計を求めたい名前がD1:D30に入っているとします。
ここの部分でD列に名前を抽出するのを手作業でやっていて果てしなく長く続きそうだったので質問致しました。

ありがとう御座いました。

お礼日時:2009/05/21 14:57

こんにちは。



まずはA列をデータ区切りで名前と品名に分け、その上でA列から重複するデータを省いたものの(画像のD列のような)リストを作り、そのリストをもとに集計していけばいいと思います。

もしA列をいじれないのなら、作業列にコピーする、または、VBAでinstrを使って集計することもできます。
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います!

今 確認をしましたら A列は必ずしも「名前/商品」の並び順でないという事が判明いたしました。。。

「商品名/名前」の場合もあり、しかも名前も「さんづけ」「呼び捨て」両方存在しています。。。

さらにさらに 大部分は「/」で区切られているのですが時折「( )」で区切ってあったり「・」だったりスペースだったりと
区切り方が統一されていませんでした。。。
(こういう入力したヤツに「お前がやれよ」と言いたいですが、どんなモンを出して来るかと考えたらとてもとても。。。)

ご提示いただいた内容ですと だいぶ楽になりそうな予感ではありますが
どちらにせよ後から確認しなくてはいけなくなりそうです。。。

他に何か良いお知恵が御座いましたら再度お願い致します。
(半ば諦め気味ですが。。。)

お礼日時:2009/05/20 15:40

一例です。


E1に=SUMIF(A:A,D1&"*",B:B)として下方向にコピー
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。

D列の名前は「抽出」もしくは「入力」しているので
ご提示いただいた数式には無理があります。。。

他に 何か良いお知恵が御座いましたら再度お願い致します。

お礼日時:2009/05/20 15:31

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

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

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

QPCデータのバックアップのために、RAID1(ミラーリング)を簡単にし

PCデータのバックアップのために、RAID1(ミラーリング)を簡単にしてくれるソフト

お世話になります。
現在、PCデータのバックアップを取りたいと考えています。
その際の形として、
・外付けHDDを2台用意
・ミラーリングソフトを購入
で考えております。

また、ソフトに求める形として、
・ミラーリング
・前回の差分のみをコピーしてくれる。
形を望んでいます。

有料のソフトでも結構ですので、教えて頂ければと思いますので
宜しくお願いします。

また、ほかによい方法ありましたら教えてください。

Aベストアンサー

>HDD2台に対してのミラーリングという意味でした。。。
RAIDという用語が不適切でしたね ^ ^;

>定期的に外付けHDD×2に手動でバックアップ
> そのHDD2台に対して、一度にミラーリング・前回分との差分を判断してコピー
>をしてくれるソフトなのです。
UNIX系なら rsync で決まりのようですが、Windows環境でも rsync を使うのが多いようです

下記のサイトを参照してみて下さい。
http://ebony.blog.so-net.ne.jp/2009-02-21

Cygwin + rsync
http://satospo.sakura.ne.jp/blog_archives/tech/tool/cwrsync.html

Qエクセルで入力があったセルの隣のセルの合計

   (A)   (B)   (C)
(1) 金額   4月   5月
(2) 2000   7
(3) 3000        1
(4) 4000   9

上のような表で、4月(B)に入力された分だけ金額(A)の合計を出すにはどうしたらよいでしょうか?
合計6000と出したいです

よろしくお願いします

Aベストアンサー

「B列の最終行に合計」でいいのでしょうか。

=SUMIF(B1:B3,">0",A1:A3)

B列に0以上の数値が入力された場合、A列の金額を足すという関数ですが、質問の解釈は間違ってないですか?

QRAID1をバックアップ代わりに使用する

RAID1をバックアップ代わりに使用する

RAID1の場合、マザーボードが故障した場合、HDDを外して、別のパソコンに繋いだ場合、
フォルダー単位でデータファイル(Excelやjpg等)は見ることが出来るのでしょうか?

RAID1のの概要は存じていますが、ネットで調べると、RAID1とバックアップは別物と書かれて
いるものばかりですが、HDD一台で使用しているパソコンで、ソフト的におかしくなっても、
大概は、別パソコンに外付けすると、中身が見れるので、RAID1もそうであるのならば、
基本的に、データ的には、バックアップしていると同じ事と理解してよいのでしょうか?
よろしくお願いします。

Aベストアンサー

>RAID1の場合、マザーボードが故障した場合、HDDを外して、別のパソコンに繋いだ
微妙な問題で、同じコントローラなら見えると思いますが・・・見えない場合もあると思います。


>データ的には、バックアップしていると同じ事と理解
RAID1の機能を正しく理解すると「バックアップ」との違いが明らかになると思います。

RAID1は、2台のHDDで1台のHDDに見せ掛けて1台分のHDD容量を犠牲にして信頼性を高めます。 同時に2台のHDDが故障しなければ、障害が発生した時点で警告が発生するのでデータが失われるという最悪の事態に進展することを防止できる可能性が高いですが、ユーザの間違えた操作によるデータの削除に対しては無力です。

バックアップはバックアップを取得した時点のデータを別なメディアに書き込んで保存し、データが失われるなどの障害時に保存していたデータから復旧するために行います。 障害が発生してから、バックアップによるリカバーが実施されるので、障害発生を防止・検出する仕組みは皆無です。


端的に言えば、RAIDを構成すると本来のHDDの信頼性を更に高める機能であってバックアップを排除するまでの機能は持っていないです。

>RAID1の場合、マザーボードが故障した場合、HDDを外して、別のパソコンに繋いだ
微妙な問題で、同じコントローラなら見えると思いますが・・・見えない場合もあると思います。


>データ的には、バックアップしていると同じ事と理解
RAID1の機能を正しく理解すると「バックアップ」との違いが明らかになると思います。

RAID1は、2台のHDDで1台のHDDに見せ掛けて1台分のHDD容量を犠牲にして信頼性を高めます。 同時に2台のHDDが故障しなければ、障害が発生した時点で警告が発生するのでデータが失われると...続きを読む

Qエクセル97で列のセルに入力されている箇所のみセル数を合計する方法

各列のセル内に、各種の文字が入っている列と各種日付が入っている列が混在しています。
日付の場合列の一番下にセルに入力されているセルの数の合計が出るようにしたい
また、各種の文字が入力されている列では、特定の文字が入力されている数の合計も出るようにしたいのですが分かりません
私はVBAは分からないので、その他のやり方で教えて欲しいのでよろしくお願いします

Aベストアンサー

再回答
やっと解析出来た(解析力が鈍くて済みません)

a1 8/1 a2 8/2  a4 8/4  
a5=count(a1:a4)で3と表示されます。

b1 a  b2 b b4 a
b5=countif(b1:b4,”a”)で2と表示されます

ついでにエクセル技道場の頁を紹介します
参考になれば幸いです。

参考URL:http://www2.odn.ne.jp/excel/waza/function.html#SEC15

QRAID1はバックアップではない?

RAID1(ミラーリング)はバックアップにならないのでしょうか。
ブログ等、どこかでそんな話を読んだような記憶があって…

私は、データを二重化するRaid1はバックアップになると思うのですが、
実際のところ、どうなのでしょうか。

私は今、大事なデータに関してはRaid1及び別HDDへの同期をとって
3重化しております。無意味でしょうか。

バックアップの仕方でアドバイス頂けたらと思います。

Aベストアンサー

バックアップという言葉の解釈によって違ってきます。

ご承知のように、RAID1は2つのドライブに同じデータを書き込みますから、どちらかが故障しても、もう一方のドライブでデータを復旧することができます。その意味ではバックアップはとれていると言えます。
しかし、RAIDカードが故障するなどの事態が発生すると、2台のドライブのデータが一気に失われますので、バックアップとしては不十分と言えます。

ご質問を拝見すると、さらに別のドライブへ同期バックアップをされているということなので、RAIDカード故障のリスクはヘッジされているということになります。3重化は無意味ではありません。

Q個々のセルに入力した数字の合計を別のセルに一桁ずつ表示する方法

こんばんは。いつも大変お世話になります。
なかなか良い関数の使い方が思いつかず、また皆様のお知恵を貸していただければと思い、質問させて頂きます。

E1に「3」、F1に「5」、G1に「7」 今日の売上値とする
H1に「9」、I1に「7」、J1に「5」 昨日の売上値とする
※ G1,J1は百の位 F1,I1は千の位 E1,H1は万の位です
この合計値をA1(万の位)、B1(千の位)、C1(百の位)にそれぞれ出したいのです。
この場合だとA1に「13」、B1に「3」、C1に「2」となります。

上記のような事をしたいのですが、可能でしょうか?
申し訳ありませんが、何とぞよろしくお願いします。

Aベストアンサー

こんばんは

何通りか記載します

1案 一旦文字列にしてから計算

A1 =INT(((E1&F1&G1)+(H1&I1&J1))/100)
B1 =INT(MOD(((E1&F1&G1)+(H1&I1&J1)),100)/10)
C1 =MOD(((E1&F1&G1)+(H1&I1&J1)),10)

実際は入力エラーチェックの式を付加する必要があります。

2案 こちらは数値に忠実な処理

A1 =INT((SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1))/100)
B1 =INT(MOD(SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1),100)/10)
C1 =MOD(SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1),10)

3案 配列数式

A1 =INT(SUMPRODUCT(E1:J1*{1,0.1,0.01,1,0.1,0.01}))
B1 =INT(MOD(SUMPRODUCT(E1:J1*{0,1,0.1,0,1,0.1}),10))
C1 =MOD(SUMPRODUCT(E1:J1*{0,0,1,0,0,1}),10)

こんばんは

何通りか記載します

1案 一旦文字列にしてから計算

A1 =INT(((E1&F1&G1)+(H1&I1&J1))/100)
B1 =INT(MOD(((E1&F1&G1)+(H1&I1&J1)),100)/10)
C1 =MOD(((E1&F1&G1)+(H1&I1&J1)),10)

実際は入力エラーチェックの式を付加する必要があります。

2案 こちらは数値に忠実な処理

A1 =INT((SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1))/100)
B1 =INT(MOD(SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1),100)/10)
C1 =MOD(SUM(E1,H1)*100+SUM(F1,I1)*10+SUM(G1,J1),10)

...続きを読む

Qバックアップ v.s. RAID

こんにちは。

先日、http://oshiete.goo.ne.jp/qa/8169080.html に対して「データの量が大きすぎるから、ネットワーク経由でバックアップするよりもRAIDを組んだほうが良いんじゃないの?」と回答した所、「RAIDはバックアップの代わりにはなりませんよ」と別な方からご指摘を頂きました。

そこで質問なのですが、変更の追跡以外の面で、どういった場合にRAIDはバックアップに機能面で劣るのでしょうか。

Aベストアンサー

ぱっと思いつくのが、災害対策でしょうか。
強固なRAIDでも火災にあえば駄目になりますが、バックアップを別な場所に保管してあればそこから復旧できます。

あと、個人的に経験があるのが、RAID5のHDDが雪崩式に次々壊れてシステムが駄目になった事。搭載していたHDDが全て同じロットだったのですが、どうやらロット不良が有ったらしく、その時はバックアップの重要性を実感しました。

まぁ、どちらもレアケースです。

Qエクセルで日付が入力されたセルの隣のセルの金額を合計するにはどうするのでしょうか。

A1、C1、E1セルにはユーザー定義(d”日”)で数字を入れると日付になります。
各、隣セルB1、D1、F1には金額が入力されています。
G1には合計が入るようになっています。
例えば、A1とE1に日付が入力された時、B1とF1の合計がG1に。
その後、C1に日付が入力されたらG1がB1、D1、F1の合計になるようにしたいです。
よろしくお願いします。

Aベストアンサー

こんばんは!
横からお邪魔します。

G1セルに
=SUM((A1>0)*B1,(C1>0)*D1,(E1>0)*F1)
ではどうでしょうか?m(_ _)m

QRAID1設定は、バックアップソフトで作成したバックアップイメージにまで影響する?

前提条件:
デスクトップコンピュータ買い替えを検討していますが、買い換えたコンピュータの内蔵ハードディスクをミラーリングしようと思います。

構築したい構成内容:
OS:WindowsXP SP3
内蔵ハードディスクは、以下の4つを使用します:
HD1(CドライブRAID1:OSインストール)
HD2(DドライブRAID1:データ保存)
HD3(CドライブRAID1ミラー)
HD4(DドライブRAID1ミラー)

http://oshiete1.goo.ne.jp/qa5514901.html
これに関して、上記のスレでk-ayakoさん(回答番号:No.4)にシステムのイメージをTrueImageなどで作成するという助言をいただきました。

k-ayakoさんの助言では、CドライブはRAID1でミラーリングする必要はないのではということでしたが、下記の質問は、CドライブもRAID1でミラーリングする前提でお聞きしています。

質問:
RAID1を使用してHD1(CドライブRAID1:OSインストール)のミラーをHD3(CドライブRAID1ミラー)に取るとして、HD1のバックアップイメージをTrueImageなどのバックアップソフトで作成した場合、そのバックアップイメージ(バックアップイメージのCドライブ)はRAID1が設定された状態のCドライブイメージとなるのでしょうか(RAID1設定は、バックアップソフトで作成したバックアップイメージにまで影響するのですか?)? つまり、そのバックアップイメージを別のHDに復元した場合、“RAID1が設定された状態の”Cドライブとして復元されるのですか?

また、そもそもHD1(CドライブRAID1:OSインストール)にRAID1を設定した状態で、バックアップソフトを用いてHD1(CドライブRAID1:OSインストール)のバックアップイメージを作成すること自体可能なのでしょうか(バックアップソフトを用いてRAID1設定されたHDのバックアップイメージを作成することは可能ですか?)?

参考サイト等も教えて下さい。

よろしくお願いします。

前提条件:
デスクトップコンピュータ買い替えを検討していますが、買い換えたコンピュータの内蔵ハードディスクをミラーリングしようと思います。

構築したい構成内容:
OS:WindowsXP SP3
内蔵ハードディスクは、以下の4つを使用します:
HD1(CドライブRAID1:OSインストール)
HD2(DドライブRAID1:データ保存)
HD3(CドライブRAID1ミラー)
HD4(DドライブRAID1ミラー)

http://oshiete1.goo.ne.jp/qa5514901.html
これに関して、上記のスレでk-ayakoさん(回答番号:No.4)にシステムのイメ...続きを読む

Aベストアンサー

kitty1000さんこんにちは!
>TrueImage及びShadowProtectのハードウェアRAIDに対するバックアップは、可能なのでしょうか?
私の使用しているRAID1はIntelが供給しているチップセットの依存しているソフトウエアRAIDなのでハードウェアRAIDについては、わかりません。
前回もお話した通り私の環境(これは前回書いていない:WinXPPro、P5K-E、Q9450、seagate500G台RAID1)では、両方ともバックアップ及びリストアは出来たと記憶しています。
>TrueImage及びShadowProtectを両方と使ってみて、感想はどうですか?
TrueImageはポピュラーなバックアップソフトですね。機能も充実しています。
デスクのクローン作成は80GBを300GBのHDへの引越し(OS含む)には良い機能だとおもいます。
ShadowProtectは売れてないのかマイナーなイメージがありますね。
基本的にHD単位のバックアップが中心ですが、スケジュールが小まめに設定できます。
一番の売りは、私はやったことがないですが、バックアップイメージを他のパソコンにリストアできることです、本当かな?私は、RAID対応ということで購入してしまった。
>ShadowProtectの事業用(電話サポートあり)は高額そうですね。
私は、ベクターからダウンロード版(サポートなし)の安いのを購入。

TrueImage及びShadowProtect両方とも500GB中300GB使用でバックアップに2~3時間、リストアに5~6時間かかったと記憶しています。ShadowProtectの方が少し高速です。また、バックアップイメージは圧縮がそれほど効かないため、1TGBの外付HDに3世代前後(3回の完全バックアップ)しか出来ませんから、実用的ではないと思います。
私は、新しいソフトをインストールする前とか、RAIDボリュームの1台のHDが故障したとき交換前にバックアップを取るとか、HD全体をバックアップはしていません。通常は、RAID1のミラーリンクである程度の問題には対応できると考えています。
先日、RAIDボリュームの1台のHDが故障したとき、2~3日1台でRAID1が解除のまま、パソコンを稼働していましたが、問題ありませんでした。故障したHDを交換後、RAID1の再構築も問題なく行なえました。故障したと思ったHDはHDケースに組み込みUSB接続でWin上からは、中を見れました(壊れてなかった?)。多分、そのHDはセクタ不良があるのではなのでしょうか?!一方のHDにセクタ不良があれば、RAID1のミラーリンクは解除され、故障と判断すると考えます。
長文で失礼しました。bobnash

kitty1000さんこんにちは!
>TrueImage及びShadowProtectのハードウェアRAIDに対するバックアップは、可能なのでしょうか?
私の使用しているRAID1はIntelが供給しているチップセットの依存しているソフトウエアRAIDなのでハードウェアRAIDについては、わかりません。
前回もお話した通り私の環境(これは前回書いていない:WinXPPro、P5K-E、Q9450、seagate500G台RAID1)では、両方ともバックアップ及びリストアは出来たと記憶しています。
>TrueImage及びShadowProtectを両方と使ってみて、感想はどうです...続きを読む

Qエクセル関数で0表示のセルの集計(合計)すると#VALUE!の表示が?

表題の通り0表示を ON OFF出来るような関数を使い(以下のもの)
=IF(ROUND(A1/2,0)=0,\"\",ROUND(A1/2,0))

セル毎の集計(合計)をしたのですが、
#VALUE!の表示が出ます。

意味は引数や演算子の種類が正しくない時に表示とあります。
解決の方策をお願いしたいのですが・・・

皆様の知恵をお借りしたく思い投稿致しました。

Aベストアンサー

> NO1さんの 補足説明に掲載しております。

No.1さんが回答されているように普通に足し算するのではなくてSUM関数で
集計を出すようにすればエラーが出なくなります。

B1からB10まで集計したいとしたら
=SUM(B1:B10)
です。
飛び飛びなら
=SUM(B1,B3,B5)
とかになります。


人気Q&Aランキング

おすすめ情報