如何将控制源设置为 selected/active 列的特定行?

How to set controlsource to specific row of selected/active column?

只是一个问题,是否有一种方法可以将组合框值的控制源定义为一个动态范围,它始终与同一行相关,但 selected/active 列。我正在尝试重用相同的用户窗体来填写 sheet 中的类似数据,向右移动一列,如果控件源随选择一起移动,那将非常有帮助。

有点喜欢

UserForm_Format.FilmType_ComboBox.ControlSource = Cells(3, ActiveCell.Column)

但是这个特定的代码不起作用

有人可以帮我解决这个问题吗?

如果您阅读 ControlSource property 的手册,您会发现您可以设置的值必须是 String

所以这一行

UserForm_Format.FilmType_ComboBox.ControlSource = Cells(3, ActiveCell.Column)

实际上默认为

UserForm_Format.FilmType_ComboBox.ControlSource = Cells(3, ActiveCell.Column).Value

您在这里所做的是设置 ControlSource 该单元格中的值。除非该值是有效地址,否则这将不起作用。

所以您可能打算执行以下操作:

UserForm_Format.FilmType_ComboBox.ControlSource = Cells(3, ActiveCell.Column).Address