2011-02-04 11 views
0

コンボボックスからオフィスブランチを選択できるようにマクロを作成しましたが、今では関連するアドレスを特定の場所。私はテーブルを使用してアドレスを保持していますが、テーブルが作成されると、カーソルがページ上に座っている場所のどこにでも作成されます。VBAを使用してWord文書の特定の場所にテーブルを配置する

テーブルを正確に(x、y)に配置するように指示する方法が見つからないようです。ドキュメントには何もありませんがテキストはないので、参照するものはありません。

可能な限りActive Xコントロールを使用しないようにしています。

答えて

5

このコードでは、2番目と3番目の段落の間に3列の1行テーブルが追加されます。

Sub InsertTable() 

    Dim tbl As Table 
    Dim pg As Paragraph 

    With ThisDocument 
     'Add a new paragraph that the table will replace 
     Set pg = .Paragraphs.Add(.Paragraphs(3).Range) 
     'Add a table in place of the new paragraph 
     Set tbl = .Tables.Add(pg.Range, 1, 3) 
    End With 

    tbl.Columns(1).Cells(1).Range.Text = "123 Main St" 
    tbl.Columns(2).Cells(1).Range.Text = "City" 
    tbl.Columns(3).Cells(1).Range.Text = "State" 
    tbl.Rows.LeftIndent = 41 

End Sub 
+0

ありがとうございました。私はそれを多かれ少なかれ稼働させましたが、私が今問題を抱えているのは、ページ上に水平に配置することです。私は、インデントやそのようなものを使うことができるかもしれないと思っていましたが、それはまったく機能していないようです。私はテーブルを中心にしていましたが、悲しいことに、それは近くには近づきません。何かご意見は? – Pirificio

+0

おそらく、行のLeftIndentプロパティ。私はコードを編集して例を挙げました。テーブルの書式設定で本当に欲しいのであれば、マクロを記録して手動で設定する方法を書式設定します。記録されたマクロは、操作する必要があるオブジェクト、プロパティ、およびメソッドを提供します。 –

1

あなたは水平方向と垂直方向の両方

tbl.Rows.HorizontalPosition = 150 'In points 
tbl.Rows.VerticalPosition = 200 

希望を助け、そのテーブルを配置するためにこれを使用することができます。

関連する問題