Word VBA: Как найти таблицу по метке, закладке?

Автор Manticor, 15 августа 2016, 11:34

Manticor

Добрый день. Как в ворд-файле найти таблицу по метке? Где находится таблица - на какой странице - не известно.

Идея такая - найти по метке эту таблицу, сделав метку выше над таблицей, поскольку в Word нет имени объекта у таблицы, и добавить новую строку с данными в эту таблицу в колонку "версия", "дата", "список".

Метка может быть представлена в виде закладки или какого-либо текста.

[вложение удалено администратором]

Manticor

Нашёл сам решение, может кому-то пригодится в дальнейшем.
Суть такая: в первую ячейку таблицы вставлена закладка, с помощью этой закладки макрос получает доступ к таблице.

Sub Поиск_таблицы()

    Dim tbl As Table, r As Long
   
   
    '1. Vba-именование таблицы.
    Set tbl = ActiveDocument.Bookmarks("МеткаТаблицы").Range.Tables(1)
   
    '2. Проверка, нужно ли вставлять строку. Строку не нужно вставлять, если это первая запись в таблицу.
        ' В этом случае в таблице есть одна пустая строка.
    If Len(tbl.Cell(2, 1).Range.Text) <> 2 Then
        tbl.Rows.Add
    End If
   
    '3. Переход в последнюю строку таблицы.
    r = tbl.Rows.Count
   
    '4. Запись в последнюю строку данных.
    tbl.Cell(r, 1).Range.Text = "столбец 1"
    tbl.Cell(r, 2).Range.Text = "столбец 2"
    tbl.Cell(r, 3).Range.Text = "столбец 3"
   
End Sub