Excel 2003(8316.8221)屏幕损坏

时间:2009-12-08 12:40:55

标签: excel-vba excel vba

Windows XP上的Excel 2003(11.8316.8221)SP3 - KB973475

当我的Excel VBA应用程序启动时,它会激活工作簿中的第一张工作表,但会将第二张和第三张工作表的部分显示为“渗透”到第一张工作表中。通过最小化和最大化工作簿或使其以其他方式重新绘制,可以轻松解决这个问题。重绘后,第一张纸正确显示。

a)是否已发布Excel更新以解决此问题? b)你能想出一个好的解决方法(详见下文)?

该工作簿是一个VBA应用程序,已经运行了很多年。自从10月中旬更新到Excel以来,它已经如上所述破坏了。破碎的版本是11.8316.8221 SP3。

在工作簿打开事件中,许多工作表不受保护,然后受到保护(用于绘制对象和方案)。如果注释掉此功能,则问题就会消失。这种行为看起来粗制滥造,很难向应用程序的客户解释。

感谢您的帮助。

我在别处看到这与KB973475补丁有关。目前尚不清楚MSoft是否会修复。唯一建议的解决方案是卸载补丁。

2 个答案:

答案 0 :(得分:0)

奇怪的问题。我记得在访问中的选项卡控件中列表视图发生了类似的事情。尝试强制重新绘制屏幕和/或从一张纸张轻弹到另一张纸张(在代码中)以查看是否有帮助

答案 1 :(得分:0)

如果我以编程方式最小化并最大化活动工作簿,则会更正屏幕损坏。代码在计时器事件处理程序中执行,并且计时器事件从Workbook_Open过程开始 - 如果直接从Workbook_Open过程执行,它将不起作用。

最小化最大化代码位于microsoft.public.excel.programming http://groups.google.co.uk/group/microsoft.public.excel.programming/browse_thread/thread/40f351dbc7f293af?pli=1

感谢Peter T在Excel论坛和我的同事Andy Smith。