- ベストアンサー
エクセルでデータが入っているか判別したい
- エクセルで大量(3000項目程度)のデータが入っているか判別する方法を知りたいです。
- エクセル2003で3000行のデータが入っているか確認する方法を教えてください。
- エクセルのセルにデータが入っているかどうかを判別する方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
B列にデータが入っているかどうかをA列にLEN関数を使ってチェックしていますがLEN関数のみではB列のセルで空白のスペースなどがあればカウントされますね。 B列のデータがB2セルから下方に表示されているとします。 そこでA2セルに次の式を入力して下方にオートフィルドラッグすればよいでしょう。 =IF(LEN(TRIM(B2))>0,MAX(A$1:A1)+1,"") これでデータの入力されているセルには上から1,2,3のように番号が付けられます。空白の入ったセルはカウントされません。 これでB列に有るデータの数が表示されますし、番号を使ってデータのある行だけを取り出すことも容易になりますね。
その他の回答 (2)
- shinkami
- ベストアンサー率43% (179/411)
データ有無のチェックならフィルターを掛けます。 [有効な列名の範囲指定から [データ]-[フィルター] これで行頭の各セルにフィルターマークの▼マークがつきます これをクリックするとその列のデータの一覧(同一データある時は1つだけ) 一覧の最後の空白のチェックを外すと 空白行を除いた一覧が表示され印字もできますが 範囲指定で他のセルへコピペしても空白行も対象になり 意味がありません。
補足
返答ありがとうございます。 う~ん、相変わらず上手に説明ができずすみません;; フィルターは分かりますが、それだと別で使用するのが難しいので別の方法でお願いします^^; 今回は「LENで」空白のチェックを行い、数式が入っていても空白の場合、何も表示されず、何か入っていた場合1を表示する。 これを3000行おこなったが、2000行までは正常に上記を実行してくれるが、2000行を越えると何故か空白でも1を表示してしまう。 これは何故ですか? また、マクロや別の数式によりこれを行うことができませんか? というか、そもそもLENの使い方が正しいですか?
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 外していたらごめんなさい。 3000行程度であればまったく問題ないと思います。 B列のデータが見た目には何もなくても、仮に空白(スペース)がある場合は空白も1文字と判断されますのでそのようなことが起こる場合があります。 試しにC列全てを範囲指定して列を挿入(列番号のC上で右クリック → 挿入)してみてください。 C1セルに =TRIM(B1) として、C1セルのフィルハンドルでダブルクリック。 このC列を参照してお示しの数式で確認してみてください。 もしこれで「1」が表示されなくなると「空白」があったということになります。 以上、一例ですが参考になれば幸いです。 的外れなら読み流してくださいね。m(__)m
補足
ご返答ありがとうございます すみません。説明が下手で^^; B列には数式?(外部エクセルファイルからの引用)が入っています。 ちなみにその元データの方は数式が入っています。 1~2000行と2001~3000行も同様の方法でデータを入れてあるのですが、なぜか1~2000行は空白は空白として取り扱ってくれるのですが、2001~3000行は空白を空白として取り扱ってくれないのです;; ちなみにLENで指定したセルの数式を消すと空白として読み取ってくれることは確認しました^^
お礼
ありがとうございます!! なるほどできました。 なるほど! 空白を除いてから探すわけですね!! この考えはなかったです。 とても参考になりました!! ありがとうございました!! とても助かりました!!