プロが教えるわが家の防犯対策術!

A列に任意の文字データが入っていれば、
B列に通し番号を付ける(累計を出す?)方法を教えてください。

A1,A3,A4のセルに何か文字が入っていれば、
B1には1、B2は空白、B3は2、B4は3
というようにしたいと思います。

何のアイディアも浮かびませんので、
よろしくお願いします。

A 回答 (4件)

再び こんにちは


>一見空白のセルも実は数式が入っているので、
>カウントされてしまいます。

であれば 簡単なのは

B1に =IF(A1<>"",1,"")

B2に =IF(A1<>"",COUNT(B$1:B1)+1,"")
 COUNT()の部分は MAX() でも同じです
必要行に複写

かな

この回答への補足

countaじゃなくて、countでも文字をカウントしてくれるのはなぜなんでしょう?
元々そういうものなのですか?
本来の質問からはずれてしまいますが、
もしお時間がありましたら教えてください。

補足日時:2003/09/06 17:21
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
きました、きました!!!
B2のセルには=IF(B2・・・
となおさせていただきましたが。
A列には数式が入っていても、文字を入れても、
数字を入れても、ちゃんとカウントしてくれます。
本当にお世話になりました。

お礼日時:2003/09/06 17:05

こんばんは #1 #2 のcomvです



>countaじゃなくて、countでも文字をカウントして
>くれるのはなぜなんでしょう?
認識されている通りCOUNT()は数値は入っているセルを
カウントとするものです!

前回#1ではA列を参照しましたが、今回の#2ではB列を
参照(範囲はB1~対象行の直上)なので連番の値が
入ったセル数を数えて(連番のない""のセルを無視)
+1するようにしたものです。

補足で書いたとおり、MAX()+1でも同じ理屈で
数値の範囲で最大値に+1しています。
    • good
    • 0
この回答へのお礼

何度もご丁寧にありがとうございました。
excelにはまだまだ私が知らない便利な数式が
たくさんあるんでしょうね。
しっかり勉強します。

お礼日時:2003/09/06 23:30

見掛け上表示されていないと言う事は、0である場合は表示しない設定か、NULLにする設定の式を組んであるのではないでしょうかねぇ


だったら、こんなのは如何でしょう?
B1セルの式は、=IF(A1=0,0,1)
B2以降のセルは、=sum($B$1:B1)+if(A2=0,0,1)
B3はこんな風になります、、=sum($B$1:B2)+if(A3=0,0,1)
B2とA3の座標は、相対参照にしておけばB2セルの式を複写すれば結果が出ますけどね
NULL値に設定している場合は、論理式の0判定部分を書き換えれば出来ますよ
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
A列にはvlookupを使っているのですが、
空欄を引っ張ってくると0を返してしまうので、
ifを使って、0なら””としてあります。
私の知識不足のせいで、

教えていただいた数式で、
0でやっても””でやってもB3以降が
VALUE!になってしまいました。

教えていただいた数式でちゃんと計算できるよう
もう少し勉強することにします。

お礼日時:2003/09/06 17:15

こんにちは


B1に =IF(A1<>"",COUNTA(A$1:A1),"")
必要行まで複写

で如何でしょうか!
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございました。
A$1:A1とは気づきませんでした!
しかし、問題が・・・

一見空白のセルも実は数式が入っているので、
カウントされてしまいます。
例えば、
A1が一見空白の場合、B1は空白。
A2に文字が入っている場合、B2は「2」
(A1の分も数えているとみられる。)

説明不足ですみませんでした。
引き続き教えてください。よろしくお願いします。

お礼日時:2003/09/06 16:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!