Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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
“object.Activate”在Excel 2013中无法正常工作_Excel_Vba - Fatal编程技术网

“object.Activate”在Excel 2013中无法正常工作

“object.Activate”在Excel 2013中无法正常工作,excel,vba,Excel,Vba,我有一个自定义功能区,其中有两个下拉列表,列出活动工作簿中打开的工作簿和工作表。单击工作簿,功能区执行wb.Activate,单击工作表,它执行ws.Activate。易于理解的我的工作表都有两个窗格。包含列标题的顶部窗格和包含数据行的下部窗格。当您通过自定义功能区选择工作簿时,所选工作簿将显示并似乎具有焦点。但是,如果使用鼠标滚轮垂直滚动数据行,则下部窗格会立即展开。窗格顶部向上移动,左侧向左或向右移动。右下角保持不变。窗格将覆盖屏幕上的所有内容 恼人和丑陋,但也发生了更糟糕的事情。窗口似乎具

我有一个自定义功能区,其中有两个下拉列表,列出活动工作簿中打开的工作簿和工作表。单击工作簿,功能区执行wb.Activate,单击工作表,它执行ws.Activate。易于理解的我的工作表都有两个窗格。包含列标题的顶部窗格和包含数据行的下部窗格。当您通过自定义功能区选择工作簿时,所选工作簿将显示并似乎具有焦点。但是,如果使用鼠标滚轮垂直滚动数据行,则下部窗格会立即展开。窗格顶部向上移动,左侧向左或向右移动。右下角保持不变。窗格将覆盖屏幕上的所有内容

恼人和丑陋,但也发生了更糟糕的事情。窗口似乎具有焦点。但是,单击活动工作表上方功能区上的按钮,您选择的任何命令都将应用于以前处于活动状态的工作簿!不好玩。通常,在选择工作簿并使用鼠标滚轮滚动后,单击一次会导致屏幕灾难,因为Excel 2013会在所有地方绘制单元格,或者Excel会立即从屏幕上消失。。。没有警告或错误。它刚刚不见了

这只影响Excel 2013。同样的功能区适用于Excel 2010。它还影响所有机器。我有六台机器。。虚拟机的。。。双xeon服务器。。。笔记本电脑。。。工作站。所有人都有同样的问题。和这只是我的账户。使用其他Windows帐户登录,问题不会出现


是什么原因导致了这种情况,我该如何消除它?

如果您在更改工作表/工作簿之前禁用屏幕更新,并在完成后将其重置,您的问题可能会得到解决


我还建议您使您的代码比microsoft的糟糕示例更健壮,并确保即使出现错误也重置屏幕更新。将ScreenUpdate设置为false意味着您基本上必须重新启动excel。

您可以添加一些代码来帮助您吗。这是导致问题的代码位之一……这是导致问题出现的代码位之一。功能区上下拉列表的单击事件。。。Public Sub r\u工作簿\u选择控件作为IRibbonControl,id作为String,索引作为Integer Dim wbook作为工作簿,wbname$If index>=0且index