Коллеги, добрый день.
Пишу вам с целью проконсультироваться в вопросе оптимизации кода макроса. В связи с необходимостью на работе в екселе очень часто нужно убивать ссылки на сторонние excel файлы для того, чтобы в последствии избегать ошибок, когда рабочий файл начнет ссылаться на отсутствующие файлы. Для этого я написал следующий макрос. Скорость работы данного макроса меня устраивает, когда дело касается обработки небольших файлов, но когда мне нужно убить ссылки в файлах +1000 строк Excel зависает и все ломается. Как его оптимизировать, если это можно сделать я сам не знаю, поэтому и обратится за помощью к вам.
Код макроса:
Пишу вам с целью проконсультироваться в вопросе оптимизации кода макроса. В связи с необходимостью на работе в екселе очень часто нужно убивать ссылки на сторонние excel файлы для того, чтобы в последствии избегать ошибок, когда рабочий файл начнет ссылаться на отсутствующие файлы. Для этого я написал следующий макрос. Скорость работы данного макроса меня устраивает, когда дело касается обработки небольших файлов, но когда мне нужно убить ссылки в файлах +1000 строк Excel зависает и все ломается. Как его оптимизировать, если это можно сделать я сам не знаю, поэтому и обратится за помощью к вам.
Код макроса:
Код |
---|
Sub RefDelList() Dim im As Range, m As Range Set myrange = ActiveSheet.UsedRange For Each cell In myrange Dim icell As Range Set icell = myrange.Find(What:="*xls*", _ LookIn:=xlFormulas, LookAt:=xlWhole, MatchCase:=True) On Error Resume Next 'icell.Style = "Normal" icell.Value = icell.Value Next End Sub |
Заранее спасибо,
P.S. Прошу прощения за слишком частое использование слова файл