• 締切済み

エクセル2007 マクロについて教えてください。

選択したセル範囲の文字だけを消去するマクロコードがわかりません。 どなたか教えていただけますか?セルC3からE33の文字や数字(セルの削除ではありません)です。ちなみにセルは結合されたものもあります。 よろしくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

>選択したセル範囲の 選択したセル範囲の全セルについての話だろう。 これはForEachなどで範囲の全セルを総舐めすることは簡単。 だから、1つのセルの文章で数字・文字混合の文字列で、文字(数字以外と言ってもよいのかもしれない)を見つけ出すのは、初心者には難しい。 泥臭く、全文字1文字づつに付いて、数字か否か(IsNumericや数字文字コードの範囲をチェック)を判別して行けば、出来なくも無いが、書く気がしない。 本当は正規表現という仕組みを使ってでも、数字の続き部分を探索するのだろうが、質問者がそんな回答を望んでいるのかな。 この質問も、したいことを書いて、丸投げしただけで、質問文では、色々考え調べた形跡も伝わってこない。丸投げは規約違反。

mild666666
質問者

お礼

親切に回答してくださった皆様ありがとうございます!他回答者さんのいうとおり、自動登録などでいろいろと調べた結果、下記のコードで解決することができました。 Range(Cells(3, 3), Cells(33, 5)).Value = Null 質問内容に腹を立たさせてしまってすいません、「書く気がしない」と言いつつもたくさんの意見ありがとうございました!

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

>セルC3からE33の文字や数字(セルの削除ではありません)です。 この部分の意味がよく解らないですが・・。 式以外を消去すれば良いのでしょうか? Range("C3:E33").SpecialCells(xlCellTypeConstants, 23).ClearContents

  • rukuku
  • ベストアンサー率42% (401/933)
回答No.1

こんばんは Selection.ClearContents を試してみてください。 書式も含めて消去するならば、 Selection.Clear です。 このあたりの操作は、「マクロの記録」がいいサンプルプログラムになります。

関連するQ&A