Здравствуйте, уважаемые!
Прошу Вас помочь словом/делом.
Есть: длинная горизонтальная таблица, почти в каждой ячейке которой формулы. Эта таблица и есть ЦЕЛЕВОЙ ДИАПАЗОН (назову её так). В примере строки [5-8].
Над нею строка дат (в примере прямая нумерация: строка 3).
В примере ячейка I1 "несет" контрольное значение (дата "сегодня").
Требуется: Если значение некой ячейки со строки 3 = значению контрольной ячейки I1 -> функции ячеек предыдущего столбика из Целевого Диапазона переписать на их значения. Т.е. в примере: F3 = $I$1 -> в диаразоне [E5:E8] формулы заменить значениями. Подразумевается, что "вчера" значение I1 было равно 4, "позавчера" = 3. Таким образом получается, что все предыдущие (относительно I1) ячейки Целевого Диапазона уже перезаписаны их значениями, а [F5:I8] - содержат формулы и пока считают.
Учусь VBA (недавно начал).
Пытался накорябать польз.функцию и вызывать её при выполнении условия (строка 12 примера). Не-а.))
Код |
---|
Public Function МояЗаменяка(rng As Range)
Dim cell As Range
Selection.Interior.ColorIndex = 6
For Each cell In rng
cell.Formula = cell.Value
Next cell
' МояЗаменяка = "заменил"
End Function |
Бить по рукам - можно! Даже НУЖНО!!!