Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос зацикливается - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Макрос зацикливается
Суровый Дата: Вторник, 27.03.2018, 15:06 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день. Если не сложно, прошу подсказать или направить в нужную сторону.
Есть код который ищет слова выделенные определённым цветом, копирует и вставляет их в начало документа.
Проблема в том, что если в документе есть таблица вставленная в другую, то выполнение макроса зацикливается. Точную причину пока не выявил, потому что, если какие нибудь манипуляции с таблицами проделать макрос может сработать нормально, а иногда есть вложенные таблицы и макрос выполняется нормально. В прикреплённом файле "Таблица для теста" - она пустая, макрос на ней зацикливается. Вот тело макроса:
[vba]
Код
sub макрос5()
' Выводит маркеры в начало документа
Selection.HomeKey Unit:=wdStory
Selection.TypeParagraph
Selection.TypeParagraph
Selection.HomeKey Unit:=wdStory
Selection.ClearFormatting
WordBasic.ClearAllFormatting

With ActiveDocument.Content.Find
.Highlight = True
.Format = True

Do While .Execute = True
If .Parent.HighlightColorIndex = wdTurquoise Then
.Parent.Copy
Selection.Paste
Selection.TypeText Text:=vbTab

End If

Loop
Selection.TypeParagraph
Selection.TypeParagraph

End With

With ActiveDocument.Content.Find
.Highlight = True
.Format = True
Do While .Execute = True
If .Parent.HighlightColorIndex = wdPink Then
.Parent.Copy
Selection.Paste
Selection.TypeText Text:=vbTab

End If
Loop
End With

Selection.HomeKey Unit:=wdStory
End Sub
[/vba]

Буду признателен, если подскажете, а то уже всю голову сломал.
Office 2007, если это имеет значение.

Тему разместил на ФРИЛАНСе
К сообщению приложен файл: __.doc (52.5 Kb)


Сообщение отредактировал Суровый - Вторник, 27.03.2018, 17:37
 
Ответить
СообщениеДобрый день. Если не сложно, прошу подсказать или направить в нужную сторону.
Есть код который ищет слова выделенные определённым цветом, копирует и вставляет их в начало документа.
Проблема в том, что если в документе есть таблица вставленная в другую, то выполнение макроса зацикливается. Точную причину пока не выявил, потому что, если какие нибудь манипуляции с таблицами проделать макрос может сработать нормально, а иногда есть вложенные таблицы и макрос выполняется нормально. В прикреплённом файле "Таблица для теста" - она пустая, макрос на ней зацикливается. Вот тело макроса:
[vba]
Код
sub макрос5()
' Выводит маркеры в начало документа
Selection.HomeKey Unit:=wdStory
Selection.TypeParagraph
Selection.TypeParagraph
Selection.HomeKey Unit:=wdStory
Selection.ClearFormatting
WordBasic.ClearAllFormatting

With ActiveDocument.Content.Find
.Highlight = True
.Format = True

Do While .Execute = True
If .Parent.HighlightColorIndex = wdTurquoise Then
.Parent.Copy
Selection.Paste
Selection.TypeText Text:=vbTab

End If

Loop
Selection.TypeParagraph
Selection.TypeParagraph

End With

With ActiveDocument.Content.Find
.Highlight = True
.Format = True
Do While .Execute = True
If .Parent.HighlightColorIndex = wdPink Then
.Parent.Copy
Selection.Paste
Selection.TypeText Text:=vbTab

End If
Loop
End With

Selection.HomeKey Unit:=wdStory
End Sub
[/vba]

Буду признателен, если подскажете, а то уже всю голову сломал.
Office 2007, если это имеет значение.

Тему разместил на ФРИЛАНСе

Автор - Суровый
Дата добавления - 27.03.2018 в 15:06
Manyasha Дата: Вторник, 27.03.2018, 16:38 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 901 ±
Замечаний: 0% ±

Excel 2010, 2016
Суровый, Оформите код тегами (кнопка #)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеСуровый, Оформите код тегами (кнопка #)

Автор - Manyasha
Дата добавления - 27.03.2018 в 16:38
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!