В настоящее время я работаю над приложением Excel, в котором у меня есть макрос, управляемый нажатием кнопки, который сбрасывает числовые значения в определенных ячейках таблицы.
В этой таблице 3 столбца; «Установленное количество (n)», «Требуемое количество (м)» и «Конфигурация замка».
Что мне нужно сделать, так это то, что при нажатии кнопки числовые значения для каждой строки в столбце «Количество соответствует» (n) сбрасываются в соответствии со значениями, отображаемыми в «Требуемое количество (м)». msgstr "столбец той же строки.
Однако, если значение ячейки в столбце" Конфигурация блокировки "этой строки установлено как" заблокировано ", я хочу, чтобы значение" Количество соответствовало (n) "оставалось неизменным после нажатия кнопки.
Надеюсь, это имеет смысл! Вот моя текущая попытка закодировать это:
Public Sub Reset_Quantity_Fitted()
'Macro to make quantity fitted equal to quantity required
Dim rng As Range
Dim cell As Range
Set rng = Worksheets(ActiveSheet.Name).ListObjects("Table_" & ActiveSheet.Name).ListColumns("Quantity Fitted (n)").DataBodyRange
For Each cell In rng.Cells
If rng.Offset(, 5) = "Locked" Then
cell = Worksheets(ActiveSheet.Name).ListObjects("Table_" & ActiveSheet.Name).ListColumns("Quantity Fitted (n)").DataBodyRange
Else
cell = Worksheets(ActiveSheet.Name).ListObjects("Table_" & ActiveSheet.Name).ListColumns("Quantity Required (m)").DataBodyRange
End If
Next cell
End Sub
Этот подход был рекомендован другим пользователем на этом сайте, однако при запуске этого кода я получаю следующую ошибку:
Run- ошибка времени '13': несоответствие типов
Может кто-нибудь помочь мне определить, что не так с этим кодом?