Страницы: Пред. 1 2
RSS
Как заморозить вычисления в одной ячейке на листе.
 
OlegSmirnov, тема - об отключении вычислений. Сами же писали:
Цитата
OlegSmirnov написал: Вопрос... про замораживание вычислений в конкретной ячейке.
 
Для начала, нужно понимать, что она делает. Описываете логику, создаёте файл пример. И думаю, что это уже совсем другая история тема.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
OlegSmirnov попробуйте так. Формула вставляется и пересчитывается только при нажатии кнопки. Как вы и хотели.Только вставьте свою формулу.
Код
Sub Макрос1()
 
    With Range("F19")
.Formula = "=RANDBETWEEN(1,10)" 'здесь замените формулу на свою
.Calculate
.Value = .Value
End With
End Sub
Изменено: casag - 02.01.2019 13:41:59
 
OlegSmirnov, О, наконец то появилась цель мероприятия.
Тогда ранее предложенный вариант
range("A2").value = range("A1").value несколько изменяется, формула после расчета и переноса значения заменяется на текст.

Код
Sub copyVal()
Application.EnableEvents = False
With Range("h19")
If Left(.Formula, 1) = "'" Then _
    .Formula = Mid(.Formula, 2)
.Calculate
Range("f19") = .Value
.Formula = "'" & .Formula
End With
Application.EnableEvents = True
 Application.Calculate
End Sub
По вопросам из тем форума, личку не читаю.
 
casag, а у вас тут - формула по-английски написана.
Русский язык - ВБА будет понимать ?
 
OlegSmirnov, перед тем, как спросить, нужно поискать самостоятельно.
Formula
FormulaLocal
FormulaR1C1
FormulaArray
 
БМВ, то есть вы имеете ввиду - что формула будет написанной - в виде текста, а потом - на время вычисления - она станет настоящей формулой - все вычислит.
А затем опять станет текстом ?

А скобки массива - они не исчезнут ?
 
Чтобы вставить свою формулу, включите запись нового макроса, выделите ячейку со своей формулой, войдите в режим редактирования (двойной щелчок левой кнопкой) и нажмите ENTER. остановите запись макроса. Затем скопируйте полученную формулу в новом макросе и влепите ее в рабочий макрос.
 
OlegSmirnov, Вы задаёте вопросы, ответы на которые можете найти (проверить) сами.
 
Цитата
OlegSmirnov написал:
А скобки массива - они не исчезнут ?
Исчезнут. надо FormulaArray пользовать в этом случае.

А вот использовать в VBА локализованные формулы не рекомендую, во избежание проблем.
Изменено: БМВ - 02.01.2019 14:03:16
По вопросам из тем форума, личку не читаю.
 
casag, БМВ, спасибо за ответы.
Буду разбираться.
 
Казалось бы всё просто, но я так и не мог найти информацию, как заморозить ячейки с формулами, чтобы при изменении данных в ячейках, на которые эти формулы ссылаются, в самих формулах не возникали надписи #ССЫЛКА
 
Никак. Только если полностью запретить пересчет. При включенном пересчете (или разовом пересчете) формула всегда пересчитывается при изменении входных данных.
Страницы: Пред. 1 2
Наверх