Home » ワードマクロ・Word VBAの使い方 » 表・テーブル » 表の列を選択するWordマクロ

表の列を選択するWordマクロ

対象:Word2007, Word2010, Word2013

表の列を選択するWordマクロ

「wordvba 表 列選択」
という検索が、このサイト・インストラクターのネタ帳で行われていました。

表の列を選択するWord VBA(Visual Basic for Applications)のコードを探している方による検索です。

どの表の、どの列を選択したいのかがわかりませんので、参考になりそうな簡単なマクロを二つご紹介しておきます。

[スポンサードリンク]

カーソルの置かれている表の1列目を選択するサンプルマクロ

表の中にカーソルがあるときに以下のマクロを実行すると、その表の1列目を選択できます。

Sub カーソルの置かれている表の1列目を選択()

 On Error GoTo ErrHndl

 Selection.Tables(1).Columns(1).Select

 Exit Sub

ErrHndl:
 Err.Clear
End Sub

SelectionオブジェクトのTablesプロパティでTablesコレクションオブジェクトを取得して、

表の列を選択するWordマクロ

Tablesコレクションオブジェクトの既定メンバーであるItemメソッドの引数に「1」を指定することで、1つ目の表を表すTableオブジェクトを取得して、

表の列を選択するWordマクロ

TableオブジェクトのColumnsプロパティで、表内のすべての列を表すColumnsコレクションオブジェクトを取得して、

表の列を選択するWordマクロ

Columnsコレクションオブジェクトの既定メンバーであるItemメソッドに「1」を指定することで、表の1列目を表すColumnオブジェクトを取得して、

表の列を選択するWordマクロ

ColumnオブジェクトのSelectメソッドで選択を行っています。

表の列を選択するWordマクロ

表の中にカーソルがないときに実行すると実行時エラーが発生するので、
  On Error GoTo ErrHndl
 ErrHndl:
  Err.Clear
としています。

Columnsの後ろの数字を変更して、例えば、
 Selection.Tables(1).Columns(2).Select
とすれば、2列目を選択できます。

アクティブページの1つ目の表の1列目を選択するサンプルマクロ

以下のようなマクロにすれば、アクティブなページの1つ目の表の1列目を選択できます。

Sub アクティブページの1つ目の表の1列目を選択()

 On Error GoTo ErrHndl

 ActiveDocument.Bookmarks("\Page").Range _
  .Tables(1).Columns(1).Select

 Exit Sub

ErrHndl:
 Err.Clear
End Sub

先のマクロのコード、
 Selection.Tables(1).Columns(1).Select
の部分で「Selection」になっていたのが、
 ActiveDocument.Bookmarks("\Page").Range _
  .Tables(1).Columns(1).Select
と「ActiveDocument.Bookmarks("\Page").Range」になっているだけの違いです。

Excelマクロユーザーが注意すべき点

ちなみに、Excelマクロに慣れた方だと、Columnsという名前のプロパティに馴染みがあるかもしれません。

ですが、ここでご紹介しているのはあくまでもWordマクロですから、同じ「Columns」という名前のプロパティであっても、まったく別ものです。

Excelで、ワークシートを列単位で操作するときなどにお世話になるColumnsプロパティは、下図のとおりRangeオブジェクトを返すプロパティです。

表の列を選択するWordマクロ

この記事でご紹介しているWordのColumnsプロパティは、Columnオブジェクトをメンバーとして持つColumnsコレクションオブジェクトを返してくるプロパティです。

ExcelマクロのColumnsプロパティに慣れている方が、この記事のWordマクロを理解するときは、この違いをしっかりと理解しておくことも大切なポイントでしょう。

最終更新日時:2020-01-06 19:43

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 表・テーブル » 表の列を選択するWordマクロ

「表・テーブル」の記事一覧

検索


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

.