• ベストアンサー

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

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

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

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

snoop220
質問者

お礼

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

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

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

snoop220
質問者

お礼

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

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.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を右クリック→解放 で削除しておけばよいでしょう

snoop220
質問者

お礼

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

関連するQ&A

専門家に質問してみよう