我是VBA新手。这个宏的想法是,一旦在第17行选择释放选项,第18行将基于图像隐藏。它工作正常,直到我试图将组合框复制到另一个单元格,在这个例子中,第23行:
Sub ComboBox5_Change()
cb = ActiveSheet.Shapes("ComboBox5").TopLeftCell.row
With ActiveSheet.Shapes("ComboBox5")
Cells(cb, 5) = .ControlFormat.List(.ControlFormat.ListIndex)
If .ControlFormat.List(.ControlFormat.ListIndex) = "Courier" Then
ActiveSheet.Range(Cells(cb + 1, 1), Cells(cb + 1, 1)).EntireRow.Hidden = False
Else
ActiveSheet.Range(Cells(cb + 1, 1), Cells(cb + 1, 1)).EntireRow.Hidden = True
End If
End With
End Sub
我试着创建另一个组合框来测试它,并复制粘贴到另一个单元格,导致相同的结果。现在无法找出问题。感谢各种帮助!
1条答案
按热度按时间uplii1fm1#
根据组合框的类型,这里有三种方法。
使用ActiveX控件:
使用窗体控件。将此宏分配给每个控件:
使用数据验证下拉列表: