Столкнулся со следующей проблемой. Не могу поменять через макрос начало формулы "уЕСЛИ..." на "=ЕСЛИ...", чтобы формула заработала. Посредством Ctrl+H всё прекрасно работает, но, даже записав через рекодер, с помощью макроса замена не происходит. Должно быть, какая-то хитрость в настройках, не позволяющая производить замены в сложных формулах. У меня просто большущий объём таких формул по разным книгам - уже невозможно что-то назад откатить... Да и, честно сказать, любопытство появилось вокруг этого секрета.
Позвольте спросить, есть ли возможность что-то добавить в макросе, дабы обойти этот "запрет" замены, или остаётся только вручную через Ctrl+H?
Спасибо.
Добрый день всем присутствующим!
Столкнулся со следующей проблемой. Не могу поменять через макрос начало формулы "уЕСЛИ..." на "=ЕСЛИ...", чтобы формула заработала. Посредством Ctrl+H всё прекрасно работает, но, даже записав через рекодер, с помощью макроса замена не происходит. Должно быть, какая-то хитрость в настройках, не позволяющая производить замены в сложных формулах. У меня просто большущий объём таких формул по разным книгам - уже невозможно что-то назад откатить... Да и, честно сказать, любопытство появилось вокруг этого секрета.
Позвольте спросить, есть ли возможность что-то добавить в макросе, дабы обойти этот "запрет" замены, или остаётся только вручную через Ctrl+H?
Вот что значит незначительный штрих от маэстро!.. Груда бесполезного текста превращается в оркестр слаженных формул!
Спасибо, Александр, за помощь! Здоровья Вам и долголетия!
И я тогда добавлю. У меня, правда, не тормозит, а вылетает (out of memory) - я указываю менять сразу в 50-ти столбцах (диапазоны на каждом листе разные). Но для себя нашёл выход - указываю макросам менять по 10 столбцов - работает! Для меня это - мелочи. Вы сделали главное! Ещё раз благодарю Вас!
Вот что значит незначительный штрих от маэстро!.. Груда бесполезного текста превращается в оркестр слаженных формул!
Спасибо, Александр, за помощь! Здоровья Вам и долголетия!
И я тогда добавлю. У меня, правда, не тормозит, а вылетает (out of memory) - я указываю менять сразу в 50-ти столбцах (диапазоны на каждом листе разные). Но для себя нашёл выход - указываю макросам менять по 10 столбцов - работает! Для меня это - мелочи. Вы сделали главное! Ещё раз благодарю Вас!mick-77
Сообщение отредактировал mick-77 - Четверг, 12.05.2016, 17:30
С полным столбцом макрос из #2 работае 32 сек, а мяукает за 2,7 [vba]
Код
Sub Мяу() Dim r As Range Dim fr$ Dim t!: t = Timer Set r = Range("I:I").SpecialCells(2) fr = r(1).Value Mid(fr, 1, 1) = "=" r(1).FormulaLocal = fr fr = r(1).FormulaR1C1 r.Value = fr Debug.Print "t= " & Format(Timer - t, "0.0000") End Sub
[/vba]
С полным столбцом макрос из #2 работае 32 сек, а мяукает за 2,7 [vba]
Код
Sub Мяу() Dim r As Range Dim fr$ Dim t!: t = Timer Set r = Range("I:I").SpecialCells(2) fr = r(1).Value Mid(fr, 1, 1) = "=" r(1).FormulaLocal = fr fr = r(1).FormulaR1C1 r.Value = fr Debug.Print "t= " & Format(Timer - t, "0.0000") End Sub