通过QTP打开VBA Excel时没有响应

通过QTP打开VBA Excel时没有响应,vba,excel,qtp,hp-uft,Vba,Excel,Qtp,Hp Uft,使用QTP脚本-->执行的操作打开电子表格abc.xlsm后,当调用

使用QTP脚本-->执行的操作打开电子表格
abc.xlsm
后,当调用
宏时,搜索窗口打开,当我点击“回车”按钮时,通过在其中提供搜索条件,Excel进入无响应状态(宏未完全运行)直到服务器本身给出以下信息:

408超时请求

通过手动调用电子表格执行上述相同操作时。它工作得非常好。 下面是我用来打开电子表格并执行宏运行的代码

Dim wShell
Set oexcel= CreateObject("Excel.Application")
oexcel.Application.Visible=True
Set obook=oexcel.Workbooks.Open("C:\abc.xlsm")
Set osheet=obook.Worksheets("Search")

oexcel.Application.Run("search") 'This is the Search macro that we are runnig
wait 2

Window("search").Activate
Set wShell = CreateObject( "WScript.Shell" )

wShell.SendKeys ("%")  ' this is the input search criteria 
wShell.SendKeys "{TAB}"
wait 2
wShell.SendKeys "{ENTER}"
wait 5  
执行上述代码行后,excel将进入无响应状态。

但是,对于另一个电子表格,同样的代码可以很好地工作,例如,对于相同的搜索宏,xyz.xlsm
。而且它总是手动运行良好。

UFT不支持XLSX/XLSM。是的,我也遇到了这个。脖子上真的很痛,但事实就是这样。只要使用老式的.XLS文件,它就可以正常工作。

如果同一个文件对另一个文件起作用,则该文件或该文件的宏中一定有错误。请仔细检查。@ManishChristian:我的团队看不到excel文件的代码,问题是当手动打开同一个excel文件时,该文件工作正常……问题只出现在qtp打开该文件时,该文件的哪一行显示了错误,即Createobject或open等。。试着设置一个断点,一行一行地进行检查,然后让我们know@user5612655错误不会显示在上面的任何代码行上……只是在上面的代码执行之后,excel会进入无响应状态,并且永远不会恢复,因此不会执行进一步的代码。首先,我使用的是QTP 11,其次,UFT确实支持XLSX/XLSM。