У меня возникли трудности с пониманием методов кодирования VBA (у меня есть только опыт R). Я пытаюсь связать значение флажка userform с конкретной ячейкой на листе, используя VBA.Флажок/Сотовая связь с несколькими пользовательскими формами
Sub x()
Dim Range As Range
If userfrom.checkbox1.Value = True Then
Range.Offset(0, 7).Value = 1
Else
Range.Offset(0, 7).Value = ""
End If
If userform.checkbox2.Value = True Then
Range.Offset(0, 8).Value = 1
Else
Range.Offset(0, 8).Value = ""
End If
If userform.checkbox3.Value = True Then
Range.Offset(0, 9).Value = 1
Else
Range.Offset(0, 9).Value = ""
End If
Unload userform
End Sub
Я пришел через метод распределения флажков массивов, но я не в состоянии понять пример в резьбе. В идеале, я представляю себе, что это объявление массива флажков, а также массив ячеек - и связать каждый элемент в каждом массиве вместе, т. Е. CheckboxArray (1) -> cellArray (1); checkboxArray (2) -> cellArray (2); и т. д.
Мой коллега изучил мой код и сказал, что его можно улучшить, то есть завершить в одной строке.
Возможно ли это?
Просто любопытно - почему бы не спросить своего коллегу для ответа тогда? – pnuts
По моему мнению, его домашняя работа – Poof
вы можете просто установить значение ячейки этого флажка в свойствах флажка, установив ControlSource в нужную ячейку. –