• ベストアンサー

エクセルの関数

1列目に日付。次の列から品目が何種。という実績の表を作っています 例えばAという品目は1日から31日まで実績がありますが、 Bという品目は4日新発売で、4日から31日まで実績が入りました。 Bの品目は、その月4日から31日で、27日間実績が入ります。 その『27』という数字を自動でカウントさせるには、どうしたらいいでしょう? いろいろと調べて試したのですが、どうしても上手くいきません どうか教えてください。よろしくお願いします。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

こんにちは。maruru01です。 データ入力範囲をB2:B32とすると、 =ROWS(B2:B32)-MATCH("*?",B2:B32 & "",0)+1 と入力して、[Ctrl]+[Shift]+[Enter]で決定します。 (数式の両端に「{}」が付いて、配列数式になります。) 1日目から見て、初めてデータが入力された位置で判断します。

kurulin
質問者

お礼

maruru01さん ありがとうございます!ROWSは縦の計算らしいので、COLUMNSに置き換えたら出来ました! 他の式の部分はさっぱりわからないけど・・・ 相変わらず、すごいですね~。尊敬です(^-^) また、わからない事があったらよろしくお願いします!! アドバイスくださった皆様も、この場を借りてお礼を言います 本当にありがとうございました。

その他の回答 (3)

noname#20023
noname#20023
回答No.3

B列の数値が入ったセルの個数を数えるということでよろしいですか。  =COUNT(範囲)   こちらでお試しください。

kurulin
質問者

補足

早速のアドバイスありがとうございました。 言葉不足で、ほんとに済みません。補足は#1さんの所に書いてあるので、よかったらまたアドバイスを下さい。

  • HAL007
  • ベストアンサー率29% (1751/5869)
回答No.2

COUNT関数で出来ませんか? 1日~3日に0が入っていると31になりますから この間はデータを入力しません。 他のデータシートからSUM関数など計算式が有る場合は IF関数を使い集計結果が0ならブランク("")を 返す様にします。

kurulin
質問者

補足

早速のアドバイスありがとうございました。 言葉不足で、ほんとに済みません。補足は#1さんの所に書いてあるので、よかったらまたアドバイスを下さい。

  • ozigakura
  • ベストアンサー率20% (16/80)
回答No.1

こんにちは データの入っているセルを数えるなら =COUNTA(A1:A31) で日付列なら31となります。 Bの品目の入っている列で=COUNTA(b1:b31)とすると 27となると思いますが 考え方が別なら言ってください

kurulin
質問者

補足

こんにちは。早速のお返事ありがとうございます。 わかりずらい&言葉不足な質問で、すみませんでした。(^-^; COUNTAでは、31日の時点では「27」になりますが それまでの間、例えば10日の時点でも「27」と表示したいのです (27と書きましたが、4日から31日だと「28」日間でした。すみません)

関連するQ&A