Здравствуйте! Подскажите, как задать значение для ячейки в зависимости от значения другой ячейки.
Есть таблица с ячейками. Если значение в предыдущей ячейке равно 20, то в следующей ячейке должно проставиться число 8.
В других случаях проставляться ничего не должно.
Прикрепляю пример.
[вложение удалено администратором]
Макрос
Sub Main()
Dim arr(), lr As Long, i As Long, j As Long
'1. Отключение монитора (для ускорения макроса).
Application.ScreenUpdating = False
'2. Поиск последней строки.
lr = Columns("A").Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, MatchCase:=False, SearchFormat:=False).Row
'3. Копирование данных в массив (для ускорения макроса).
arr() = Range("A1:AG" & lr).Value
'4. Функционал.
For i = 3 To UBound(arr, 1) Step 1
For j = 3 To UBound(arr, 2) Step 1
If arr(i, j) = 20 Then
Cells(i, j + 1).Value = 8
End If
Next j
Next i
'5. Включение монитора.
Application.ScreenUpdating = True
'6. Сообщение.
MsgBox "Готово.", vbInformation
End Sub