• 締切済み

SUMIF関数で複数のブックを参照する方法

A列に1~20の数値がランダムに入っていて、B列~Z列はそれぞれ1~20に対する数値が入っています。 それを数値1項目のB~Zの各々の集計、同2のB~Z、と20までB~Zそれぞれの集計を出すブックを作成しています。 その関数自体はSUMIFでできるをことを教えていただいたのですが、 その集計は複数のブックにまたがっており、その全てからA列の数値を参照しなければならなくなりました。 ブック001のセル01、ブック002のセル01・・・ブック012のセル01、 同様にブック001のセル02、ブック002のセル02・・・ブック012のセル02、といった具合です。 関数で処理することはできるのでしょうか? よろしくお願いいたします。

みんなの回答

  • NIWAKA_0
  • ベストアンサー率28% (508/1790)
回答No.2

=SUMIF([ブック001.xls]Sheet1!$A$1:$A$100,A1,[ブック001.xls]Sheet1!$B$1:$B$100) +SUMIF([ブック002.xls]Sheet1!$A$1:$A$100,A1,[ブック002.xls]Sheet1!$B$1:$B$100) +SUMIF([ブック003.xls]Sheet1!$A$1:$A$100,A1,[ブック003.xls]Sheet1!$B$1:$B$100) …… のように単純に足していけばできると思いますが・・・ ブックの数が多いと、セル内の字数制限にひっかかるかも。 その場合は、例えば3ブックづつ足して、それらを合計する、というようにしないといけませんね。 ・・・一つのシートにまとめるわけには行かないんですか?

  • hirorin00
  • ベストアンサー率50% (446/884)
回答No.1

ふたたびです。 私の知る範囲では、シートにまたがるのは可能ですが、ブックは覚えがありません。 それぞれのブックからシートを移動して、Sheet1の =SUMIF($A$1:$A$1000,$A1002,B$1:B$1000) の部分を =SUMIF(Sheet1:Sheet12!$A$1:$A$1000,Sheet1:Sheet12!$A1002,B$1:B$1000) にすればできると思うのですが… ちょっと自信無しです。

関連するQ&A

  • SUMIF関数で検索条件がわからず困っています

     ECXEL 2003(OS:WindowsXP)を使用しています。  A    B    C  10  150  50  10  150  80  10  150  20  15  100  100  20  60   40  20  60   20  上記の表でA列内の同じ数値にあたるC列の合計数をB列の各々のセルに表示させようと思っています (例:A列の「10」のC列の合計「150」をB列の各セルに表示)。SUMIF関数の「検索条件」の欄に 文字列やセル名ではなく、A列内で同じ数値ごと(例:10・15・20の各合計がでるよう)に自動計算する数式が あるように聞いていますので、教えて戴けないでしょうか?  また、SUMIF関数にこだわらずいい方法があれば教えていただけましたら幸いです。

  • SUMIF関数?

    例の通りなんですが、Book1B列にはBook2B列、Book1C列にはBook2C列のBook2A列の日付が入ります。 <例> Book1 A B C Z 0001 - 7/27 0002 7/27 7/27 0003 - - 0004 - - 0005 7/27 7/27 0006 - - 0007 7/27 7/27 0012 - - 0013 - 7/27 0014 7/27 - 0015 - - 0016 - - Book2 A B C 7/27 0005 0013 7/27 0007 0002 7/27 0014 0005 7/27 0002 0001 0007 Book1にはA列が500~1000行近くあり、Book2はA列の日付ごとのシートが一ヶ月分あります 。 Zの列で =SUMIF(Book2!$B$1:$B$4,A1,Book2!$A$1:$A$4) Book2B列・C列…ごとに作業しています。 SUMIF関数は条件をみたす値の合計を求めるとなっていますがこの場合の使用はどうでしょうか? 他の方法があれば教えていただけますか? 何度も修正したのですが、列がずれてしまいます。見づらくてすみません。

  • sumif関数

    sumif関数を使って、 =sunif(A1:A10,"<0.5",B1:B10) のように書きますよね。 この0.5の部分の代わりに、別のセルに入力した数値を参照したいのですが、たとえばC1のセルに0.5を入力した上で =sunif(A1:A10,"<C1",B1:B10) のように書いても、うまく認識してくれず、全部0になってしまいます。 なぜでしょうか?

  • エクセルの特定セルのみを集計する方法

    A1~A1000に1から20までの数値がランダムに入っていて、 B~Zの1~1000にはやはり数値が入っている場合の集計で、 A1~1000の数値が「1」の行の集計、「2」の行の集計・・・「20」の・・・という風に集計どのような関数を使用したらよいのでしょうか? 集計項目はB~Z列まで全てをA欄の数値20通りで集計します。 ヨロシクおねがいいたします。

  • SUMIFでできるんでしょうか?

    A     B 日付   数値 5/1     3 5/2      5 5/3       2 5/4      4 5/5      3 のようなシートで 日付を入れるとそれ以前の数値の合計を 求めたい場合 =SUMIF(A1:A5,"<=38840",E1:E5) (38840は5/3の数値) とすれば出来るのですが  38840をD1とかのセル参照では出来ないのでしょうか? 他の関数でもあれば教えてください。

  • SUMIF関数で二つの条件を満たすもの?

    SUMIF関数を使って集計しています。 A1 B1 A1とB1の条件が一致する場合の集計を出したいのですが、 SUMIF関数を使って設定できますでしょうか? ご指導よろしくお願いします。

  • SUMIF関数で、条件に日付範囲で指定するには?

    SUMIF関数で、条件に日付をいれたいのですが、 10日毎の範囲で集計を取るにはどうすればいいでしょうか。 A列に日付、B列に数値で =SUMIF(A:A,"【2013/9/1~2013/9/10】",B:B)  こんな感じで日付の部分が問題のところです。 date関数を入れてみると例えば9/3だけなど、一日だけの計算はできたのですが… 1~10,11~20、21~末日(31日)で合計するにはどう記入すればいいでしょうか。

  • EXCELでSUMIFがうまく出来ない

    EXCELでSUMIF関数を使って、集計したいのですが以下の2つの文字列(数字)が認識できず正しい結果になりません。 2つのセルでそれぞれ ”88505180000200200”と”88505180000200250”を入力しているのですが、関数では同じ値とみなして集計してしまうようです。 該当セルの書式設定は文字列で、!の「数値が文字列として保存されています」が出て、 「数値に変換する」を選ぶとどちらも”88505180000200200”になってしまいます。 何かよい方法がないでしょうか?

  • SUMIF関数

    1月1日 100 日付をA列1-10行 数をB列1-10行 1月2日 200 (略) 1月10日 1000 これで 1月4日~1月7日までの 合計SUMIFで求めるとき、 =SUMIF(A1:A10,">=1/4",B1:B10)-SUMIF(A1:A10,">=1/7",B1:B10) と 数式立てました。が答えは 2月8日 と返ってきました。 そこで 質問ですが SUMIF関数は 複数の数式には対応しないのでしょうか?(1月4日以降の合計から 1月7日以降の合計を引いて 1月4日~1月7日 を求める方法) 教えて 下さい。お願い いたします。 エクセルは2002です。 なお、自分 先日COUNTIF で質問して、そのとき 教えてもらった 数式が そのまま流用できそうな 感じがして SUMIF関数に 置き換えて みたら数値が欲しいのに、日付が 返ってきた しだいです。 http://www.okweb.ne.jp/kotaeru.php3?q=339430 お願いいたします。 最近、関数が 難しいですが がぜん 面白くなってきて、参考書を読んで 実践して つまずくと ここに 頼って きてしまいます。

  • Excel関数(SUMIFの応用?)

    いつも参考にさせて頂いています。 現在、ある集計表をつくっていますが集計用の関数がわからなくて困っています。 <表の内容> ・セルA1:「ランク」 ・セルA2~A10:「A」or「B」or「C」を入力している ・セルB1:「要望」 ・セルB2~B10:「あり」or「なし」or「不明」を入力している ・セルC1:「金額」 ・セルC2~C10:各金額を入力している <集計> ・セルC11に「ランクが"A"」かつ「要望が"あり"」の金額合計を表示 ・セルC11に「ランクが"C"」かつ「要望が"なし"」の金額合計を表示 ・・・等々 この集計にはどのような関数を使えばよいでしょうか? 表を利用する者がDatabase関数は理解していないので、Database関数以外で使えるものがありましたら、教えてください。 今はD列に「=A2 & B2」のような式を入れて「=SUMIF(D2:D10,"Aあり",C2:C10」として集計していますが、もう少しスマートな方法があれば、教えていただきたいと思います。 どうぞよろしくお願いします。

専門家に質問してみよう