「vba word 表 文字 挿入」
「word vba 表のセルに入力」
といった検索キーワードで、時折アクセスがあります。
「word vba 表のセルの値を書き換える」
といった検索キーワードでのアクセスもあります。
表のセルに文字列を入力するサンプル
アクティブなWord文書に表を作成しておいてから、以下のSubプロシージャを実行してみてください。
With ActiveDocument.Tables(1)
Dim r As Long, c As Long
For r = 1 To .Rows.Count
For c = 1 To .Columns.Count
.Cell(r, c).Range.Text = r & "行 × " & c & "列目"
Next c
Next r
End With
End Sub
サンプルマクロで行っている処理
2重ループの構造
アクティブなWord文書の1つ目の表を表すTableオブジェクトの、
With ActiveDocument.Tables(1)
1行目から最後の行まで処理するFor~Next文の中で、
Dim r As Long, c As Long
For r = 1 To .Rows.Count
1列目から最後の列まで処理するFor~Next文を回しています。
For c = 1 To .Columns.Count
Table.Cell(r, c).Range.Textの意味
この2重のFor~Next文の中で、Tableオブジェクトに用意されているCellメソッドを呼んで、
With ActiveDocument.Tables(1)
.Cell(r, c).Range.Text = r & "行 × " & c & "列目"
表のセルを表すCellオブジェクトを取得しています。
Table.Cellメソッドには、行番号と列番号を引数に指定する必要があり、
上記のSubプロシージャでは2重のFor~Next文で使っているカウンター変数r・cを指定しています。
.Cell(r, c).Range.Text = r & "行 × " & c & "列目"
取得したCellオブジェクトに用意されているRangeプロパティを使って、
.Cell(r, c).Range.Text = r & "行 × " & c & "列目"
セル内の文字列範囲を表すRangeオブジェクトを取得して、
RangeオブジェクトのTextプロパティを使って、文字列を入力しています。
.Cell(r, c).Range.Text = r & "行 × " & c & "列目"
最終更新日時:2021-07-16 16:28
Home » ワードマクロ・Word VBAの使い方 » 表・テーブル » Word VBAで表のセルに文字列を入力する