• ベストアンサー

Excel数式について

Excel数式について Excel2003を使用しております。 sheet1からsheet4のA列からC列に1~100までの数字を入力しております。 sheet5のA1~A100にそれぞれの数字をカウントしたものを返したいのですが、 適した数式をご教示いただきたくよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

シート名が0405や0510のように規則性がないなら、以下のような配列定数を使用した数式を利用してください。 =SUMPRODUCT(COUNTIF(INDIRECT({"0405","0510","シート名3","シート名4"}&"!A:C"),ROW(A1))) 1の数を表示するセルに上記の式を入力して下方向に100個オートフィルしてください。

sakuichi
質問者

お礼

ご回答拝読致しました。大変参考になりました。 貴重なお時間を割いてのご回答、誠に感謝致しております。 また機会がありましたら宜しくお願い致します。

その他の回答 (4)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.5

>シート名が日付(0405,0510等)になっているのですが対処できますでしょうか? 回答したとおりSheet1,2,3,4というご相談だったので,そのように規則性があるとき出来る方法をお話ししました。 別の方法1) 規則性について説明できないデタラメなときは,当然ながら綺麗には出来ません。 セルB1からB4に4枚のシート名の一覧を準備して,同様の数式でもうひと工夫する方法が一つあります。 =SUMPRODUCT(COUNTIF(INDIRECT($B$1:$B$4&"!A1:C100"),ROW(A1))) 別の方法2) 実際のところシートの枚数が数枚程度なら, =COUNTIF(シート1!A:C,ROW(A1))+COUNTIF(シート2!A:C,ROW(A1))+COUNTIF(シート3!A:C,ROW(A1)) と数式バーの中で数回コピーしながら,普段見るとおりの数式を書いた方が間違いなく誰にでも簡単に作成できます。 同じく式中に直接書き込む手としては =SUMPRODUCT(COUNTIF(INDIRECT({"シート名","シート名","シート名","シート名"}&"!A1:C100"),ROW(A1))) などもありますが,中途半端に小手先を使うより普通の式で書いた方が簡単かなと思います。 別の方法3) 日付でも構いませんが,計算可能な規則性があるなら計算で求めて数式に組み込む方法もあります。やり方は最初に回答した式("Sheet"&ROW(A1:A4)の部分)の単なるバリエーションです。 上述方法1同様,やっぱりデタラメならこの目はありません。後出しはもうカンベン願いたいので,このアプローチを探りたいときは自力でお願いします。

sakuichi
質問者

お礼

ご回答拝読致しました。大変参考になりました。 貴重なお時間を割いてのご回答、誠に感謝致しております。 また機会がありましたら宜しくお願い致します。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

次の文章が抜けていました。A2セルやB2セルの式は下方にオートフィルドラッグします。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

次のように作業列を作って対応すればよいでしょう。 シート5ではA列のA2セルから下方に例えばA2セルに=ROW(A1)と入力して1から100までの数値を並べます。 それぞれの数値の数はB列に表示させることにしてその数を求めるための作業列を用意します。 C1セルにはSheet1に相当するシート名を入力します。F1セルまでに4つのシートのシート名を入力します。 その上でC2セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(OR(C$1="",$A2=""),"",COUNTIF(INDIRECT("'"&C$1&"'!A:C"),$A2)) 各シートでの該当する数値が幾つあるかが表示されます。 最後にB2セルには次の式を入力します。 =IF(COUNT(C2:F2)=0,"",SUM(C2:F2)) B列に答えが表示されますね。

sakuichi
質問者

お礼

ご回答拝読致しました。大変参考になりました。 貴重なお時間を割いてのご回答、誠に感謝致しております。 また機会がありましたら宜しくお願い致します。

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

シート5の任意のセルに =SUMPRODUCT(COUNTIF(INDIRECT("Sheet"&ROW($A$1:$A$4)&"!A1:C100"),ROW(A1))) を下向けに合計100個コピーする など。 注意: >sheet1からsheet4の…1~100までの数字  ご相談で書かれている通りにSheet1,2,3,4でなければなりません。 #式中の「ROW($A$1:$A$4)」の部分はシート1,2,3,4の名前を作るのに使っているので,変えてはいけません。 #式中の「ROW(A1)」の部分は1から100の数字を作るのに使っているので,変えてはいけません。

sakuichi
質問者

補足

ご回答ありがとうございます。 シート名が日付(0405,0510等)になっているのですが対処できますでしょうか?

関連するQ&A

  • Excel数式について

    Excel数式について Excel2010を使用しております。 sheet1からsheet10のA列からC列に1~400までの数字(コード)をランダムに入力しております。 中には欠番もあるので、入力される数字(コード)は全部で「97」になります。 sheet11のA1~A97にそれぞれの数字(コード)をカウントしたものを返したいのですが、 適した数式をご教示いただきたくよろしくお願い致します。

  • Excel関数について

    Excel関数について Excel2003を使用しております。 B列に日付を入力しており、E列には数字を入力しております。 B列には必ず日付を入力しておりますが、E列には数字を入力していない場合もあり、 日付ごとにE列に入力した数字をカウントしたいのですが、 どのような数式を使用すれば確認出来るでしょうか? 日付ごとの数字の合計ではなく、あくまでもカウントになります。 ご教示頂きたく、何卒宜しくお願い致します。

  • Excel数式について

    Excel2010を使用しております。 A列 2~60セルに数量が入力されております。 B列 2~60セルに5種類のフルーツの名称 (りんご・みかん・ぶどう・もも・なし)がランダムに入力されております。 例えばB列に「りんご」が10か所入力されている場合、 A列に入力されている数量の合計(リンゴ数)をC1セルに返したい場合、 どのような数式(関数)を使用すればよいでしょうか? ご教示頂きたくお願い致します。

  • エクセルの数式をどのように入れたら良いでしょうか?

    エクセルの数式をどのように入れたら良いでしょうか? いつもこちらでお世話になっています。 今回も教えて頂きたく質問させていただきます エクセルについてですが、 sheet1に入っているデータを sheet2に入力するようにしたいのですが sheet1の A列に1~50までのNo. →A1セルにNo.1、A50セルにNo.50 B列に(1)データ C列に(2)データ があり sheet2の D5のセルに「1」と入力すれば、sheet1!A列の数字とリンクしてsheet!B1の(1)データが入り D6のセルに「10」と入力すれば、Sheet1!A列の数字とリンクしてsheet!C10の(2)データが入る ように設定し、 さらにsheet2のD5,D6のセルに上書きで(繰り返し)数字を入力させ 数式が消えないようにしたいのですが どのようにすればよいでしょうか? 分かりずらい説明で申し訳ありませんが 大変困っているので、アドバイス頂けると助かります。

  • EXCEL関数について

    EXCEL関数について EXCEL2003を使用しております。 お知恵を拝借願います。 Sheet1、A列、A2~A100セルに「1~10」の数字がランダムに入力されています。 数字は「グループ1」、「グループ2」・・・「グループ10」という意味です。 Sheet1、B列、A2~A100セルに「1~20」及び、「OK」、「NG」がランダムに入力されています。 Sheet2、A列、A2~A21セルに「1~10」までの数字(グループ)が順に入力されており、 Sheet2、1行目、B1~W1セルに、「1~20」及び「OK」、「NG」が順に入力されております。 ここで、Sheet2のB2セルに、Sheet1にて「グループ1」は 「1」をいくつ選択しているかを返す式を入れたいのですが、 SUMIF?COUNTIF?等でいろいろと試してみたのですが、うまくいきません。 同じように、C2セルであれば、「グループ1」は「2」をいくつ選んでいるか。 W5であれば、「グループ4」は「NG」をいくつ選んでいるかの式を入力したいのです。 拙文乱文、大変恐縮ですが、ご教示頂きたく何卒宜しくお願い致します。

  • EXCEL関数について

    EXCEL関数について Sheet1、A1~A1000セルに「1~10」までの値がランダムに入力されております。 数字は「グループ1」、「グループ2」・・・という意味です。 B列、B1~B1000セルには「1~4」までの値がランダム入力されております。 B列については、空白のセルもあります。 Sheet2、A1~A10セルに、「1~10」までの値、「グループ1」~「グループ10」までが順に入力されております。 ここで、Sheet2、B列~E列、それぞれの1~10セルを使用し、、 それぞれの「グループ」がSheet1にて「1~4」の値をいくつずつ選んでいるか算出したいのです。 「グループ1」について、「1」のカウントはB1セル、「2」のカウントはC1のセルに返します。 同じように「グループ2」はB2~E2のセルに、「グループ3」はB3~E3のセルに値を返したいのです。 「COUNTIF」等の関数でいろいろと試してみたのですがうまく反映されません。 拙文乱文、大変恐縮ですが、ご教示頂きたく何卒宜しくお願い致します。

  • 【Excel】数式のコピー

    Excel2003を使用しています。 他人が作成した表の行数を増やして、数式もコピーしたいのですが、その数式は別シートを参照していて、行・列が連続していないので、単純にコピー → 貼り付けでは、正しい数式を貼り付けることができません。 現在は、とりあえず、コピー&貼り付けした後に、数式を修正しているのですが、規則性があるので、手作業で数式を修正する以外に何か良い方法はないでしょうか? Sheet1…参照するシート Sheet2…数式が入力されているシート Sheet2に入力されている数式は  C7 = Sheet1!B7  D7 = Sheet1!C7  E7 = Sheet1!D7  F7 = Sheet1!E7  G7 = Sheet1!F7  H7 = Sheet1!G7  I7 = Sheet1!B8  J7 = Sheet1!C8  K7 = Sheet1!D8     :     :  C16 = Sheet1!B25  D16 = Sheet1!C25  E16 = Sheet1!D25  F16 = Sheet1!E25  G16 = Sheet1!F25  H16 = Sheet1!G25  I16 = Sheet1!B26  J16 = Sheet1!C26  K16 = Sheet1!D26 以上が1ページ分で、C列~H列、I列~K列はそれぞれ参照する行が1行おきになっています。 Sheet1の1ページは26行ありますので、2ページ目のSheet2の数式は  C17 = Sheet1!B33  から始まり  D17 = Sheet1!C33     :     :  H17 = Sheet1!G33  I17 = Sheet1!B34  J17 = Sheet1!C34  K17 = Sheet1!D34     :     :  K26 = Sheet1!D52  までが、2ページ目となり、これが下方向へ続いています。 これらの数式を変更することなどで、コピー&貼り付けができないかと思い、質問させていただきました。 説明がわかりづらくて、申し訳ありませんが、よろしくお願いします。

  • Excelの数式について教えてください

    Excel2000を使っています。 添付ファイルにあるようなデータを、 (・A列・・・店名 ・B列・・・7つほどの項目 ・C列・・・数字(B列の項目に関する数字) 店名ごとに、B列の項目”い”と”か”の行の、C列の数字を 別シートに返したいです。 別シートに返す場合も、添付ファイルにあるように ・A列に店名 ・B列に”い”の項目の数字(元データC列の数字) ・C列に”か”の項目の数字(  〃  ) 以上のように返したいです。 マクロではなく、数式を使ってできますでしょうか? 添付ファイルが見えづらく、さらにわかりづらい文章で申し訳ありませんが、よろしくお願い致します。

  • EXCEL関数について

    EXCEL関数について EXCEL2003を使用しております。 お知恵を拝借願います。 「りんご」、「いちご」、「なし」は「グループ1」 「バナナ」、「メロン」は「グループ2」というように、 果物を20個のグループに分けます。 それぞれのグループの果物は、1個から10数個まで様々です。 Sheet2、A列、A2~A100セルに果物名、 Sheet2、B列、B2~B100セルにグループ番号(1~20)がランダムに入力されています。 ここで、Sheet1のA2セルに「りんご」と入力すると、 Sheet1のB2セルにグループ番号「1」が返せるような関数はありますでしょうか? 「VLOOKUP」で試してみたのですが、数字ではなく果物名から検索したいのと、 数字が重複しているので使えないことに気付きました・・・。 何卒ご教示頂きたく宜しくお願い致します。

  • 条件付き書式 数式について Excel2003

    条件付き書式 数式について こんにちは。Excel2003を使用しています。条件付き書式を数式で使おうと思っています。 A列のセルの書式設定は「日付」になっています。 A1に「2011/7/28」とはいっています。 やりたいことは、A列の日付が今日の日付とイコールならA1~C1のセルの背景色を赤にしたいと思っています。 そこで、書式の条件付き書式から数式を選び、下記の式を入力しました。 today() = A1 で書式のパターンを赤にしました。 しかしながら、何もかわりません。何が間違っていると考えられるでしょうか?

専門家に質問してみよう