【发布时间】:2020-02-03 15:44:42
【问题描述】:
我已经搜索了一段时间,但没有找到解决问题的方法。我在工作表上有几个 activex 组合框。瞬间在第 1-5 行中有 5 个组合框。用户单击链接到用户表单的按钮,该用户表单将根据用户输入隐藏或取消隐藏 5 行。使用 vba 隐藏 5 行不是问题。我面临的问题是当 5 行未隐藏时,组合框是不可选择的。我的意思是用户无法选择或开始在其中输入任何内容。它们是可见的,但几乎就像一个不可见的物体在它们上方,因此用户无法选择它们。
复制工作表或选择“设计模式”并稍微移动框,组合框可以再次选择。我不想继续复制工作表,而且我还没有找到将组合框准确移动到设计模式之外的方法。下面是我试图用来移动盒子的 vba 代码,但使用 -11 和 11 只会将盒子向上移动两次。
任何人都知道为什么 activex 组合框在它们所在的行变得不隐藏或有解决方案后会被“锁定”吗?
ActiveSheet.Shapes("ComboBox1").IncrementTop 11
【问题讨论】:
-
如果在取消隐藏行的代码中添加一行
Debug.Print ActiveSheet.Shapes("ComboBox1").Enabled会有什么结果? -
感谢您的回复,使用该代码,我得到运行时错误 438“对象不支持此属性或方法”。
-
我无法复制这种行为。我最好不要分享隐藏和取消隐藏行的代码。
-
下面是我的代码,非常基础。在 excel 功能区中使用按 + 和 - 选项分组时,我遇到了同样的问题。 Private Sub generic_g_Click() ActiveSheet.Rows("39:58").EntireRow.Hidden = True Unload Me End Sub
-
我仍然无法复制它。你为此使用用户表单吗?
标签: excel vba combobox activex