Страницы: 1
RSS
Замена символа во всей книге макросом
 
Добрый день!
Сталкиваюсь с проблемой: в большой книге иногда не пересчитываются формулы, хотя в настройках включен пересчет "Автоматически пересчитывать".

В связи с этим я записал макрос по замене знака "=" на "=", те самым все формул принудительно будут пересчитаны.
Код
Sub Обновление_формул()

    Cells.Replace What:="=", Replacement:="=", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub

Но данный макрос работает только на 1 листе, а мне нужно, чтобы замена производилась во всей книге (не зависимо от названия и кол-ва листов)

Прошу помочь осуществить, макрос назначаю на кнопку для удобства.
 
Maxim,
Код
Sub mrshkei()
Dim sh As Worksheet
For Each sh In Worksheets
    sh.Cells.Replace What:="=", Replacement:="=", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next sh
End Sub

Не бойтесь совершенства. Вам его не достичь.
 
Спасибо большое!
 
Код
Application.CalculateFull
Не решает проблему с пересчётом?
 
+ или Application.CalculateFullRebuild
Кстати, увидел Application.CalculateUntilAsyncQueriesDone — эта штука, часом, не решает проблему с асинхронностью обновления запросов PQ?…
Изменено: Jack Famous - 11.10.2021 15:16:10
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх