Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » 最終段落をWord VBAで削除する

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2011 ビルド13426.20332 Microsoft Store)

「word vba 最終段落 削除」
という検索キーワードでアクセスがありました。

詳細は不明ですが、最後・末尾の段落をWord VBAで削除するには、どのようなコードを書けばいいのか探していらしたのでしょう。

最終段落を削除するサンプルコード

何の条件分岐も必要ないのであれば、以下のような1行のコードで、アクティブ文書の最終段落を削除できます。

ActiveDocument.Paragraphs.Last.Range.Delete

イミディエイトウィンドウで、上記のコードを入力して実行しても、もちろんOKです。

最終段落を削除するコードについて

オブジェクトを取得するタイプのプロパティが、
  ActiveDocument
   .Paragraphs
    .Last
     .Range
と4つ連なって少々長いものの、意味は比較的わかりやすいコードではないかと思います。

既にご紹介しているとおり、ParagraphsコレクションのLastプロパティを使うと、名前のとおり最後・末尾のParagraphオブジェクトを取得できます。もしもLastプロパティが用意されていなければ、Countプロパティを組み合わせたコードにしなければならなかったはずで、やはりLastプロパティは便利だと感じます。

取得した最終段落を表すParagraphオブジェクトの、Rangeオブジェクトを取得して、Deleteメソッドで削除しています。

Word VBAのオブジェクトモデルに慣れていないと、ParagraphオブジェクトにDeleteメソッドが存在すると考えてしまうかもしれませんが、違います。Word VBAのParagraphオブジェクトに、Deleteメソッド等は用意されていません。

文字列範囲に共通するプロパティやメソッドはRangeオブジェクトに実装されているのが、Word VBAの基本的な考え方です。

最終更新日時:2022-01-11 05:26

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » 最終段落をWord VBAで削除する

「段落・パラグラフ」の記事一覧

検索


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