Автор Тема: Word VBA Макросы: Удалить фигуру из верхнего колонтитула.  (Прочитано 55 раз)

Оффлайн oleg4226

  • Посетитель форума
  • Сообщений: 7
Нужно из верхнего колонтитула последней страницы удалить фигуру.
Положение фигуры: Перед текстом.

Страницы поделены на разделы.
В верхнем колонтитуле каждой страницы одна сгруппированная фигура.

Макрорекодер выдал следующее:
Код
'открываем колонтитулы
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
'выделяем фигуру
Selection.HeaderFooter.Shapes("Group 851").Select
'вырезаем
Selection.Cut
но дело в том что имя фигур будет меняться на последнем листе.

Как то надо добраться до последнего листа и удалить имеющуюся в верхнем колонтитуле фигуру.

Оффлайн Администратор

  • Administrator
  • Сообщений: 1710
Макрос
Sub Макрос()

    Dim раздел As Section, колонт As HeaderFooter
    Dim i As Long
   
   
    '1. Присваиваем имя "раздел" последнему разделу.
    Set раздел = ActiveDocument.Sections.Last
   
    '2. В последнем разделе, во всех видах колонтитулов убираем "Как в предыдущем".
    For Each колонт In раздел.Headers
        колонт.LinkToPrevious = False
    Next колонт
   
    '3. Удаляем в последнем разделе во всех видах колонтитулов плавающие рисунки.
    For Each колонт In раздел.Headers
        For i = колонт.Range.ShapeRange.Count To 1 Step -1
            колонт.Range.ShapeRange(i).Delete
        Next i
    Next колонт
   
    '4. Сообщение.
    MsgBox "Готово.", vbInformation
   
End Sub

Оффлайн oleg4226

  • Посетитель форума
  • Сообщений: 7
Огромная благодарность за помощь - все работает как надо!

Оффлайн Администратор

  • Administrator
  • Сообщений: 1710
написал вам ещё на почту (с другим содержимым)