「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は??