Страницы: 1
RSS
Запоминание и изменение настроек инструмента "Найти и Заменить" макросом
 
И снова доброго времени суток, Планетяне!
Я всё "массивы, массивы", а тут вот какая штука приключилась: в общем есть такой всем известный инструмент как "Найти и Заменить", состоящий из 2х соответствующих вкладок. Лично у меня косяк случился с "Заменой", но, думаю, что с поиском всё абсолютно также будет. Что же с ним не так?
А дело вот в чём:
А вопрос, собственно в том, как в начале кодов с Replace "запоминать" настройки инструмента, определённые до запуска макроса и потом, в конце работы макроса, возвращать их?
Может у кого найдутся ещё советы, нюансы и "подводные камни", которые нужно учитывать…

Нюансы работы метода Range.Replace
Изменено: Jack Famous - 05.11.2020 09:50:21
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Как написано в документации, настройки метода Replace неразрывно связаны с настройками объекта Find dialog box из коллекции Dialogs, получить который можно так: Aplication.Dialogs(xlDialogFormulaReplace).
Или для поиска xlDialogFormulaFind. Полный список элементов коллекции тут: https://msdn.microsoft.com/en-us/library/bb240973(v=office.12).aspx
Соответственно, Вам нужно свойства желаемого диалога сохранить в переменные типа Variant, выполнить метод с нужными настройками и восстановить значения изменившихся при выполнении метода параметров диалога. Я слабо понимаю, зачем так сделано, чтобы настройки объекта меняли параметры метода, а параметры метода меняли настройки объекта, но - факт.
Изменено: Irregular Expression - 07.11.2017 22:41:40
 
Irregular Expression, большое вам спасибо за наводку - сам поиском не добрался!  ;)  :idea:
Отпишусь по результатам тестов в эту тему, но, думаю, что не раньше следующей недели, т.к. срочная командировка в другой регион…
Изменено: Jack Famous - 08.11.2017 00:32:15
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
del
Изменено: Jack Famous - 05.11.2020 09:48:16
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Доброе время суток
Цитата
Irregular Expression написал:
Соответственно, Вам нужно свойства желаемого диалога сохранить в переменные типа Variant
А они есть для Aplication.Dialogs(xlDialogFormulaReplace)? Метод возвращает стандартный объект класса Dialog, а там нет ничего, кроме Show. Какого-то другого интерфейса, с которым может сочетаться Dialog не наблюдается. :(
Страницы: 1
Наверх