Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击/激活ActiveX控件可锁定excel单元格_Excel_Vba - Fatal编程技术网

单击/激活ActiveX控件可锁定excel单元格

单击/激活ActiveX控件可锁定excel单元格,excel,vba,Excel,Vba,我在处理excel文件时遇到了一个小困难。当从一张工作表移动到另一张工作表时,新激活的工作表有时会被锁定,这意味着我无法进行键盘输入。这似乎是与组合框或列表框交互的结果 当我第一次单击控件,然后尝试更改受保护工作表的未锁定单元格的内容时,也会出现此问题。如果图纸未受保护,则不会出现问题 当我在control lostfocus事件上添加此代码时,这似乎得到了解决 debug.print selection.locked ActiveX控件是否与纸张保护或键盘输入相干扰?我仍然可以使用这些单元格

我在处理excel文件时遇到了一个小困难。当从一张工作表移动到另一张工作表时,新激活的工作表有时会被锁定,这意味着我无法进行键盘输入。这似乎是与组合框或列表框交互的结果

当我第一次单击控件,然后尝试更改受保护工作表的未锁定单元格的内容时,也会出现此问题。如果图纸未受保护,则不会出现问题

当我在control lostfocus事件上添加此代码时,这似乎得到了解决

debug.print selection.locked
ActiveX控件是否与纸张保护或键盘输入相干扰?我仍然可以使用这些单元格的下拉菜单,用鼠标选择它们,等等。 有没有线索知道如何在不添加这条神秘线的情况下解决这个问题?
谢谢你的帮助

如果隐藏了公式栏,只需将其变为可见即可。我知道这听起来很奇怪,但对我来说很有效。

如果是保护问题,就会出现错误消息。你看到错误消息了吗?没有错误消息:我只是不能输入单元格,但我可以通过它们的下拉菜单修改它们。如果我运行一些明显不相关的代码,比如debug.print cell.locked,那么我可以输入这些单元格,即使我没有修改任何属性。这对我来说很奇怪…它可能不是一个带有数据验证的单元格,而是一个表单控件或activeX控件组合框。我对它不是非常熟悉,但是试着用一个正确的clic来点击它,看看在列表的底部是否有一个“格式控件”,它设置了它的属性……我不完全理解你的建议,但是是的,我实际上是在用一个组合框从一张纸转到另一张纸。虽然它看起来是独立的,因为我对组合没有问题,但问题在于一些单元格不接受通过键盘进行的更改。你能提出你的建议吗?这些控件会捕获keybord事件吗?好吧,我在每个activex的lostfocus事件中放置了一个if selection.locked=false然后selection.locked=false,这样问题就不会再出现了。奇怪的事。。。