Расположение таблицы в определенном месте в документе Word с использованием VBA - PullRequest
2 голосов
/ 04 февраля 2011

Я написал макрос, чтобы пользователь мог выбрать офисную ветвь из поля со списком, и теперь я хочу вставить соответствующий адрес в текстовый документ в определенном месте. У меня есть таблица, в которой хранится адрес, однако, когда таблица создается, она создается в том месте, где находится курсор на странице.

Кажется, я не могу найти способ указать таблице точно (x, y), где мне нужно, чтобы она появилась. Поскольку в документе нет ничего, кроме текста, на него нет ссылок.

Я также стараюсь избегать использования элементов управления Active X, если это возможно.

Ответы [ 2 ]

6 голосов
/ 04 февраля 2011

Этот код добавит таблицу из трех столбцов и одну строку между вторым и третьим абзацами.

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
1 голос
/ 31 августа 2011

Вы можете использовать это для позиционирования таблицы как по горизонтали, так и по вертикали

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

Надеюсь, что помогло.

...