• ベストアンサー

Excelで連続で入力されたセルの数を数える方法は?

A列に日付、B列に金額を毎日入力して行きます。ただし、金額はある条件のときだけ入力します。このとき、下のように金額欄にデータがあるときだけ、C列にその連続回数を表示したいと思います。    A    B    C 1 1/25   100   1 2 1/26   110   2 3 1/27 4 1/28   150   1 5 1/29    6 1/30    90   1 7 1/31   160   2 8 2/1    120   3 こんな感じにしたいのですが、どうすればよろしいのでしょうか? どうぞよろしくおねがいします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

1行目に項目(日付 金額 連続回数)があるなら C2=IF(ISNUMBER(B2),SUM(C1,1),"") で計算できます。

osayann21
質問者

お礼

完璧にできました。期待通りに動いてくれます。 ありがとうございました。 これからもよろしくおねがいします。

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

その他の回答 (6)

noname#204879
noname#204879
回答No.7

  A   B  C 1 月日 金額 回数 2 1/25 100   1 3 1/26 110   2 4 1/27 5 1/28 150   1 6 1/29 7 1/30  90   1 8 1/31 160   2 9  2/1 120   3 セル C2 に式 =IF(B2="","",SUM(C1,1)) を入力して、此れを下方にズズーッと複写

osayann21
質問者

お礼

ご回答ありがとうございます。 なるほど~すばらしいですね。シンプルな式がいいですね 実は回数が複数以上ある場合の平均値を出そうと思っていたので、 シンプルな式は大変効果があります。 ご回答をよせていただいた皆様ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
noname#22222
noname#22222
回答No.6

s_husky です。 補足しておきます。 Option Explicit Public Sub Update_C()   '   ' B列が入力されてC列が空欄を探す   '      '   ' C列に代入する値を計算する   '      Application.OnTime Now + TimeValue("00:00:01"), "Update_C" End Sub Public Sub Auto_Open()   Application.OnTime Now + TimeValue("00:00:01"), "Update_C" End Sub ※値の計算は、多くの方が回答されているので割愛します。 ※1秒毎にしかC列が更新されないのが難点です。

osayann21
質問者

お礼

2回にわたるご回答ありがとうございます。 VBAの世界なんでしょうが、私には理解の範囲を超えてしまいました。 折角ご回答していただきましたが、確認もできない始末です。 申し訳ありません。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

C1に1 C2に=IF(B2="","",IF(C1="",1,C1+1)) をいれ、C2で+ハンドルを出して下へ引っ張る。 (例)B列 C列 a 1 s 2 d 3 s 1 d 2 a 1 a 2 s 1 d 2 f 3 g 4

osayann21
質問者

お礼

ご回答ありがとうございます。 質問がわかりにくかったかもしれません、C1にはいつも金額が入るとは かぎらないのですが・・・

全文を見る
すると、全ての回答が全文表示されます。
noname#22222
noname#22222
回答No.4

Excelは良く判りませんが、一言。 私なら、Excelのシートにタイマーを配置してB列が更新された時にC列にしかるべき値をセットします。

全文を見る
すると、全ての回答が全文表示されます。
  • I_X
  • ベストアンサー率40% (4/10)
回答No.2

一番上の行に空行が必要ですが、C列に =IF(B2="","",IF(B1="",1,C1+1))  でできませんかね~? もし、意味の履き違いがあったら、すいません・・・

osayann21
質問者

お礼

ご回答ありがとうございます。 そういえば、1行目にタイトル行が入りますよね、 あわてて質問してしまい忘れてしまいました。すいません

全文を見る
すると、全ての回答が全文表示されます。
noname#16474
noname#16474
回答No.1

C1に =if(B1="",0,1) C2は =if(B2="",0,C1+1) とし、C3以降にコピー でいかがでしょう。 C列の0は、非表示にしてください (書式設定を #,###,-#,####; とするなど)

osayann21
質問者

お礼

早速のご回答ありがとうございます。 実は初めて質問したので、h20060121さんが初めての回答者となります。 これからもよろしくおねがいします。

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

関連するQ&A

  • エクセルで連続セルの出現回数を出したいです。

    例えば、A列に、0と1だけのデータが(数万行)あります。 A列 0 0 0 →a 1 →c 1 0 0 0 →a 0 →b 0 1 0 1 1 1 1 0 このデータから、 a:0が3連続した回数 b:0が3連続した次のデータが0だった回数 c:0が3連続した次のデータが1だった回数 (4連続は含まず) こういったデータを出したいのですが、エクセルでどのような方法がありますでしょうか? (上記の例では、a2回、b1回、c1回) よろしくお願い致します。

  • エクセルで複数条件に合うセルの数を数えたい

    エクセルで関数を浸かって、複数の条件に合うセルの数を数えたいです。 方法を教えてください 状況としてはA列に日付が入ります。B列は別のデーターが入り、C列に分類が入ります。    A   B   C 1 10/3  まる  山 2 10/3  三角  川 3     三角  川 条件1 A列に日付が入っていてC列の分類が山のもの  ?個 条件2 A列に日付が入っていてC列の分類が川のもの  ?個 条件3 A列に日付が入っていなくてC列の分類が山のもの  ?個 条件4 A列に日付が入っていなくてC列の分類が川のもの  ?個 こんな感じで各条件毎のセル数を数えたいです。よろしくお願いします。

  • エクセルでカウントした数を特定のセルに入力したい

    エクセルの関数について質問させてください。 A列  B列   C列 8/9       リンゴ 8/10      ミカン 8/11      リンゴ 8/12      ブドウ 8/13      ミカン 8/14      リンゴ 8/15      ブドウ 上記のような表で、C列でカウントしたリンゴの数を 前日の日付の行の、B列に入力したいのです。 ※今が8/10だとすると、リンゴの数「3」を  8/9の行のB列の欄に入力したい。 COUNTやCOUNTIFSで色々試してみたのですが、 どうしてもうまくいきません。 どうぞ宜しくお願いします。

  • excelで連続出現数の頻度の算出

    お知恵をお貸しください。 シート1にデータがA列は01~09が文字列、10は数値 B列は10~15,C列 は16~20…というふうに入っています。 たとえば、01が下の行に2回連続して入ったら2回連続が1カウント、 離れた行にまた2回連続で入ったらまた1カウントで、合計2回連続ということで 違うシートには2回 2 という風に連続した回数が何回あったかを 出したいのです。 なにかいい方法はありませんか。 お示ししたのは画像ファイルですので、関数の式またはマクロの構文をお知らせいただけると助かります。 よろしくお願いいたします。

  • 連続するセルに空白セルを入力する方法

    縦列に 【A1】 a b c a b c a b c …(以下100回ほど) 上記のように連続する列があるといます。 これを、 【A1】 【A2】 a b 【空白セル】 c a b 【空白セル】 c a b 【空白セル】 c …(以下連続) このようにしたいです。 どのようにすればよいのでしょうか? 教えてください。

  • Excel 関数 

    初心者です条件にあったものを参照する数式を教えてください よろしくお願いいたします! ~sheet1~ A列     B列  回数    金額 3,000以下  29,800 3,000以上  39,800 4,000以上  49,800 上のようなsheet1に表があり sheet2にA列に下のように1の表示がある場合のみ sheet1の条件にあった金額を sheet2のC列に表示させる数式を教えてください。  A列  B列    C列       回数   金額(円)  1    5O,712   49,800  1    133    29,800  1    3,014    39,800       3,014  (計算しない) わかりにくい説明かもしれませんが… すみませんがよろしくお願いいたします。   

  • EXCEL連続した回数のカウント

    エクセル初心者です。 連続した数字の回数のカウントの仕方が分からず困っております。 A列に0と1が50個並んでいます。 50個の0と1はその並び順が変化します。 1が先頭から5個以上、連続して並んだ時に、その1が連続した回数を特定のセル(例えばB1)に表示するようにしたいのです。 下の例1ではA3から1が8個連続していますので、B1のセルに8が入るようにしたいのです。 並びが変わりますので、先頭のA3が0の例2や、1が5個以上連続しない例3の場合は、B1のセルは空白のままになるようにしたいのです。 1が先頭のA3から5個以上連続した時だけ、その先頭から連続した回数(個数)を数えるようにしたいのです。 どうぞよろしくお願いします。 (例1)   A列   B列   C列・・ 1行 2行  3行 1 4行 1 5行 1 6行 1 7行 1 8行 1 9行 1 10行 1 11行 0 12行 0 ・ (例2)   A列   B列   C列・・ 1行 2行  3行 0 4行 1 5行 1 6行 1 7行 1 8行 1 9行 1 ・ (例3)   A列   B列   C列・・ 1行 2行  3行 1 4行 1 5行 1 6行 1 7行 0 8行 0 ・

  • エクセルの対象セルの1つしか入力できないようにする方法。

    エクセルで、たとえば、A列にデータを入力した場合、B,C,D列にはデータを入力できないようにする方法はありますか?

  • エクセルで同じ数字が連続している個数を関数でセルに出力

    A列に1かー1かいずれかの数字が入力されているとき、その行から上方に数えて、B列には1の連続している個数を、C列にはー1の連続している個数を出力したいのです。例えば A列    B列    C列 1      1     0 1      2     0 -1    0     1 -1    0     2 -1    0     3 といった具合です。 この時、B列、C列にはどのような関数を入力すればよいでしょうか。

  • Excel 連続した回数の把握 (できたら至急)

    A列に以下のように、『0』と『1』が不規則に約4000個並んでいます。 今、『0』または『1』が”連続”して現われる回数を、それぞれ把握したいのですが、眼で確認してB列に『0』の連続回数を、C列に『1』の連続回数を打ち込んでいます。このままでは、一生かかりそうです(オーバー)、何か良いやり方ありませんでしょうか? A列 B列 C列 0 0    2 1 1       2 0 0 0 0    4 1 ・ ・ ・

専門家に質問してみよう