こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルの関数を教えてください

空白セルの個数を計算したいのですが、
表の中に全角スペースや半角スペースが入力されており、
COUNTBLANKを使って計算しても、そのセルは省かれて計算されてしまいます。
今は条件付書式でスペースがあるセルを色付けをして、一つ一つ消していっているのですが、データが大量にあるので、もっと簡単に済ませたいです。
いい方法があれば教えていただきたいです。
よろしくお願い致します。

投稿日時 - 2007-09-26 12:09:52

QNo.3378164

困ってます

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

シート内のスペースが全て不要なら、
Ctrl + H (置換)で、検索文字にスペース(一個)、置換後の文字に何もいれないで置換をすると、スペースが消えます。
全角と半角で2回置換すれば全て消えるのでは?

投稿日時 - 2007-09-26 12:18:25

お礼

早速の回答ありがとうございます
簡単にできました!
とても助かりましたm(__)m

投稿日時 - 2007-09-26 13:00:26

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

安直ですが、次の方法は如何でしょうか。
=COUNTBLANK(範囲)+COUNTIF(範囲,"半角スペース")+COUNTIF(範囲,"全角スペース")

投稿日時 - 2007-09-26 12:43:16

お礼

早速の回答ありがとうございます
考え方を変えればこの様な方法もありますよね!!
皆さんの頭の回転の良さには驚くばかりです
ありがとうございました!

投稿日時 - 2007-09-26 13:09:56

ANo.2

>全角スペースや半角スペースが入力されており
全角スペースと半角スペースしか入力されていないセルをクリアするマクロを作ってみました。「文字 空白 文字」のようなセルはそのままにします。

以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。マクロの実行はワークシート画面に戻りALT+F8でマクロ一覧を開き、マクロ名を選択して「実行」ボタンです。

Sub Macro1()
Dim r As Range
Dim wk
For Each r In Cells.SpecialCells(xlCellTypeConstants, 3)
If VarType(r.Value) = vbString Then
wk = Application.Substitute(r.Value, " ", "")
wk = Application.Substitute(wk, " ", "")
If Len(wk) = 0 Then
r.ClearContents
End If
End If
Next r
End Sub

マクロが不要になったら、VBE画面を再度開き、標準モジュールのModule1を右クリック→解放 で削除しておけばよいでしょう

投稿日時 - 2007-09-26 12:40:02

お礼

早速の回答ありがとうございます
とても詳しいご説明まで頂いてしまって・・・
がんばって挑戦してみたのですが、エクセル初心者の私には
高レベルで、頭が混乱してしまいました
短時間の間にこれだけのマクロを作られるなんて、、、
尊敬です!!!
貴重なお時間を費やして頂き本当にありがとうございました☆

投稿日時 - 2007-09-26 13:07:46

あなたにオススメの質問