调用外部函数值传递错误
我在QTP中定义的全局的public类型变量public val,使用外部vbs文件中的函数如:Function getCellValue(xlworksheet,row,col)val =""
Err = 0
On Error Resume Next
tempValue = xlworksheet.Cells(row, col)
If Err = 0 Then
val = tempValue
Err = 0
End If
On Error GoTo 0
GetCellValue = val
End Function
getCellValue函数是在Vbs中的另一个函数中被调用的,将另一个函数(如函数名为functionA)直接放在vbs中,在QTP中调用该函数时,通过getCellValue函数取出的Excel表格的值是空的,若把functionA直接放在QTp中,调用functionA时,通过getCellValue取出单元格的值就是正确的,我不明白为什么,请高手们帮忙! GetCellValue = val
把值赋给函数吗?
建议你把两个Public Function都放在resouces中,再调用试一下。
调试失败
就是这样做的时候有问题的,这两个函数放在function libraries中,调试时取出的getCellValue的值为空值 QTP好像不支持外外部函数的调用,在运行时只执行当前界面中的程序!呵呵! QTP支持外部函数调用的 有没有把functionA的vbs文件加载到QTP的Resources中? 或者把它放在与getCellValue同一个Vbs中应该可以 我一般都不加载到Resources中的,因为加载到那里不会自动更新代码我都是在代码开头使用ExecuteFile "D:\QTP\file\funaction.vbs"这样的语句.
这个问题就不会存在了. 呵呵,感谢大家回帖!问题已解决,是环境变量传递值错误!辛苦大家啦!
页:
[1]