Home » ワードマクロ・Word VBAの使い方 » Word.Rangeオブジェクト » Word VBAでRange.Clearは??

動作検証バージョン:Windows 11 Home + 64bit Word バージョン 2403(ビルド17425.20000クイック実行)ベータチャネル

「word vba Range.clear」
といった検索キーワードで、このサイト『インストラクターのネタ帳』へのアクセスがありました。

Excel VBAのRange.Clearメソッドをご存じの方による検索ではないかと、

私は想像しています。

Word.RangeにClearメソッドは無い

結論をお伝えすると、Word VBAのRangeオブジェクトにClearメソッドはありません。

オブジェクトブラウザーで検索対象をWordライブラリに限定して「Clear」を完全一致検索すると、下図のような状態になります。

複数のオブジェクトにClearメソッドがありますが、Rangeオブジェクトはヒットしていません。

また、オブジェクトブラウザーでRangeオブジェクトの「C」で始まるメンバーを探しても、「Clear」は見つかりません。

Word VBAで文字列削除はDeleteメソッド

Rangeオブジェクトで削除を行いたいのであれば、拙著『Excel VBAユーザーのためのWord VBA入門(1): Document・Range・Selectionの基本編』の、[3-3. Rangeの特徴的なメソッド]でも解説しているDeleteメソッドを使ってください。

拙著で解説しているとおり、

ActiveDocument.Range(0, 1).Delete

を実行すると、アクティブなWord文書の1文字目が削除されます。
また、

ActiveDocument.Range(0, 1).Delete

を実行した場合には、全文字列が削除されます。

clearとdeleteの違い

英単語の「clear」と「delete」の違いを、意識しておくことをおすすめします。

ChatGPT 3.5に「英単語のclearとdeleteの違いを教えてください」と質問したところ、以下のような文章を生成してくれました。

"Clear" は、何かを除去してきれいにすることを意味します。例えば、机の上の物を取り除くことや、データのキャッシュをクリアすることなどが該当します。

"Delete" は、データや情報を完全に削除することを意味します。例えば、ファイルを削除することや、データベースからレコードを削除することなどが該当します。

要するに、「clear」はあるものを取り除いてきれいにすることを指し、「delete」はデータや情報を完全に消去することを指します。

Excelのセルは、削除することもクリアすることも可能です。

それに対しWordの文字列はどうでしょうか?

最終更新日時:2024-03-05 15:47

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » Word.Rangeオブジェクト » Word VBAでRange.Clearは??

「Word.Rangeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.