背景:使用Excel GetChartElement确定用户单击了图表的哪一部分。然后用它来确定代码中的下一步。问题是,一台计算机报告的GetChartElement ElementID (来自.GetChartElement x,y,ElementID,Arg1,Arg2)在一台计算机上与其他三台计算机上的不同。所有计算机都安装了Office 365,并且都是最新的。我已经将确切的文件传输到了四台机器上,其中三台得到了正确的答案,一台没有。怀疑某个地方的腐败,就像过去给出正确答案的那个一样。
问:这个GetChartElement函数是否使用了Office365之外的任何代码,这些代码在不同的机器上可能会有所不同?
发布于 2018-06-28 03:08:32
随后的调查揭示了答案,所以我会回答自己。
硬件设置是具有辅助屏幕的笔记本电脑,桌面扩展到两个显示器上,上面的电子表格('XLS')在辅助屏幕上。
当XLS在辅助屏幕上时,GetChartElementID在参数ElementID、Arg1和Arg2上响应不稳定的结果。将XLS移到主屏幕,一切正常。
将XLS移到其他单屏机器上,一切正常。
在其他机器上设置相同的第二个屏幕,扩展桌面,仍然可以。
结论,这不太可能是Excel的问题,但也许是Excel <>驱动程序的问题。(请注意,x和y参数在所有测试中似乎都是正确的)
谢谢
https://stackoverflow.com/questions/50995140
复制相似问题