• 締切済み

countif関数について

Excelを用いて、csv形式のファイルの一部から、指定した数値の個数を調べたいのですが、うまく動作しません。 csv形式のファイルは、 "商品名","在庫数" によって構成されています。 そこから、例えば在庫数が10個未満の商品の数、在庫数が0個の商品の数を取り出したいのです。 また、csv形式のファイルは1日に数回生成され、ファイル名は、zaiko_12345.csvのようになっており、「12345」の部分はランダムな5桁になります。 やりたいことは、たとえば、A1セルにランダムな5桁の数値を入れることによって、 A2セルに在庫数が10個未満の商品の数、A3セルに在庫数が0個の商品の数が自動的に表示されるようにしたいのです。 countifやindirectなどを使えばできそうなのですが、うまくいかずに困っている状況です。 ご教示のほど、よろしくお願いいたします。

みんなの回答

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

A1セルへの5桁の数値はファイル名の一部を意味するとしたら例えば A2セルへの入力の式は次のようになりますね。 =IF(AND(ISNUMBER(A1),LEN(A1)=5),COUNTIF(INDIRECT("'[zaiko_"&A1&".csv]Sheet1'!B5:B100"),"<10")-COUNTIF(INDIRECT("'[zaiko_"&A1&".csv]Sheet1'!B5:B100"),0),"") A3セルへの入力の式は次のようになります。 =IF(AND(ISNUMBER(A1),LEN(A1)=5),COUNTIF(INDIRECT("'[zaiko_"&A1&".csv]Sheet1'!B5:B100"),0),"")

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

CSVのファイル形式についてはよくわかりませんが、例えばA5セルからA100セルまでに商品名が、またB5セルからB100セルまでに在庫数があるとして商品名に重複が無いのでしたらA2セルへの入力の式は次のようになりますね。 =IF(AND(ISNUMBER(A1),LEN(A1)=5),COUNTIF(B5:B100,"<10")-COUNTIF(B5:B100,0),"") A3セルへの入力の式は次のようになります。 =IF(AND(ISNUMBER(A1),LEN(A1)=5),COUNTIF(B5:B100,0),"") 上記の式が参考になりましたら。

underfinde
質問者

お礼

早速の回答ありがとうございます。 A5セルからB100セルまでにデータが存在している場合についてテストした結果、うまくいきました。 ところで、外部ファイルを参照する場合にはどのようにしたらよいでしょうか。 例えば、A1セルに23456を入力すれば、zaiko_23456.csvからデータを参照して個数を取得しA2セル、A3セルに表示するといった場合です。 よろしくお願いいたします。

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

関連するQ&A

  • 関数 countif の使い方についてです。

    countif =COUNTIF(A1:A9,">2") こんばんは、上記のようにある一定の範囲内である数値以上のセルをカウントしているのですが、ある数値は桁ごとに違い、その数値は決まっているので、ここでいうと>2の2の部分をコピーで引っ張って、一気に桁ごとにそれぞれの数値以上の数をカウントしたいのですが、 そういった事は可能でしょうか? 絵柄的には 2 2 3 5 6 5 8 6    5 8 6 5 8 5 7 9 5    4 9 5 4 3 5 7 8 1    3 範囲は連続で並んでる数値を使用し、右隣りがその中での以上の数値があればカウントをしていきたいといった表になってます。 countifでは、手入力で一つずつ>○以上と入力していかねばならないため、行が2000桁位あるのを捌くのが非常に困難です。 お手数ですが、知識の豊富な方、教えて下さいませ。

  • COUNTIF関数

    COUNTIF関数の 質問します。 A1:A20 に 数値入ってるとします。 10以上の セル数を 求める 式は =COUNTIF(A1:A20,">10") ですよね? 質問なのですが 例えば、10以上20以下 の セル数を 求める時の 式は どういう 式に なるのでしょうか? COUNTIFでは できないのでしょうか? もし できないなら 他の 関数 教えてください。 よろしく お願い いたします。 エクセルは 2002です。

  • 集計をする関数について教えてください(countif?)

    点数の集計をしたいのですがやり方がわかりません。 A1~A50までに0から100の数値を入力してあります。 で、任意のセルに 0~10点の数 11点~20点の数 という集計をしたいのですがどうやればいいのでしょうか? 20点が何人いるか? ならcountIFで簡単にできるのですが、 11点~20点の数を数えるやり方が教えていただけますでしょうか?

  • COUNTIF関数について

    タイトルの件についてご助言をお願いします。 エクセル表でいくつかシートがあって、例えば各シートの同じセル番号(例えば3枚のシートのA1のセルとして)にある”○”の数を集計したいとき、COUNTIF関数で次のように入力しました。 =COUNTIF(sheet1:sheet3!A1,"○") ところが、VALUEエラーが出て、集計してくれません。同じシート内でCOUNTIFで”○”の数を計算するのはすんなりできています。(例えば、=COUNTIF(A1:A5,"○"))この関数ではシートごとの集計はできないのでしょうか?ほかの関数を使うのでしょうか?集計する方法をご存知の方ご教示ください。

  • Excelの関数について(Countif?)

    ある金額を羅列した表(範囲)から、ある一定の範囲の数値を数えたい方法を 教えて下さい。 現在、売上金額別の集計を実施しております。 1,000円から1,000,000円までの各売上表が各セルに配列されております。 例) A1:1,000円 A2:12,000円 A3:1,000,000円 等と下に続きます。 =COUNTIF(A1:A3,"=<50,000")の場合、を別のセルでやれば、恐らく数値は、「2」となると思います。 しかし、これでは50,000円以下となっているだけです。 自分は、0円から、50,000円の範囲での数値を数えたいです。 宜しくお願い申し上げます。 P.S. Countifは、以下、以上、未満だけしかできないみたいです。 Dcountとも試しましたが、いまいちヨク理解できないです。

  • エクセル2003、countif関数の検索条件について

    エクセル2003、countif関数の検索条件について 「A1セルより小さい数値の数」を調べたいのですが、 どうしてもうまく出来ません。 イメージ的には COUNTIF(B1:B20,"<A1") のようにしたいです。 回答よろしくお願いします。

  • Excelの関数「COUNTIF」について

    =COUNTIF(A1:B50,"<=○○") ○○のところは指定のセルから引っ張ってくることは不可能なのでしょうか? 例えばC1が100として =COUNTIF(A1:B50,"<=100")   だと、ちゃんとカウントしてくれるんですが =COUNTIF(A1:B50,"<=C1") だと、A1:B50に100以下の数値が何個あっても0になってしまいます。 「""」で囲っているからだと思うんですが、 「""」を外すと、入力した数式は正しくありませんと警告がでます。 どう入力すれば検索条件をセルから引っ張ってくることができるのでしょうか? どなたか分かる方、知恵をお貸し下さい。 よろしくお願いいたします。

  • Countif関数について教えてください。

    アンケートメールをCSV出力したものを集計しようと考えています。 Excelで、countif関数を使ってキーワードを元に数を出そうと思ったのですが、 正しい結果が出ません。 [hoge.xls]      A 1 りんごジュースは   りんごからできている 2 りんごとみかんは   違う果物だ 3 みかんとバナナでは   みかんの方がすっぱい といったデータがあるときに、「りんご」というキーワードが 含まれるセルの個数を出したいと考えています。 結果を出すのは、実際には別のファイルで、A列のキーワードが何個あるかをB列に出したいと考えています。 上記の例だと    A    B 1 りんご   2 2 バナナ   1 といった感じです。 そこでこういう関数を出してみました。 COUNTIF([hoge.xls]Sheet1!$A$1:$A$3,"*"&A1&"*") データが少ない場合には、この関数で正しく結果が出るのですが、 実際には300件以上のデータがあり、結果が実際の 件数よりもずっと少なく出ているような感じがします。 メールですので、元データには改行も含まれますし、 1つのセルに2つ以上、同一のキーワードが含まれることもあります。 原因らしきものの検討がつきません。 どうかお知恵をお貸しください。 #あるいは他のデータ個数抽出方法があれば、教えてください。 よろしくお願いします。

  • エクセル関数(VLOOKUP?)

    エクセル関数の組み方を教えてください。 表Aにランダムな5桁の英数字(商品番号)があります。 表B(表Aとは別のエクセルファイルファイル)に Aとは並び順の異なった5桁の英数字(商品番号)があり 商品番号のとなりのセルに、その商品が載っているページ数があります。 表Aの商品がどのページにあるのかを探したく Aの隣のセルに、その商品のページ数を表示させたいのですが VLOOKUPなどで組めますでしょうか? -- A 00001 00005 00002 00006 -- B 00007 8 00005 10 00003 1 00006 20

  • COUNTIFについて教えてください

    セルのE2~AL2に0~14までの数字がランダムに入力されています。 このうち1~9までと10~14までの数字の数をそれぞれ数えることができる関数はありますか? ちなみに0はCOUNTIF(E2:AL2,0)で数えることが出来たんですが。

専門家に質問してみよう