zhbinx 发表于 2007-8-27 13:04:45

看看

yuandjing 发表于 2007-8-27 15:57:02

写Excel的函数我改了一下,原来的代码会因为Excel的版本不同而造成不稳定
现在OK了
'写Excel文件元素并保存退出
Public Function QTP_Write_Excel(pathway,sheetname,x,y,content)
        Dim srcData,srcDoc,sp1,sp2,num,use,a1,a2,a3
        set srcData = CreateObject("Excel.Application")
        srcData.Visible = True
        set srcDoc = srcData.Workbooks.Open(pathway)
        srcDoc.Worksheets(sheetname).Activate
        srcDoc.Worksheets(sheetname).Cells(x,y).value = content
       
'        sp1 = Split(pathway,".")
'        sp2 = Split(sp1(0),"\")
'        num = UBound(sp2)
'        use = sp2(num)

'        Set a1 = Description.Create()
'        a1("text").value="Microsoft Excel - " + use + ".xls"
'        a1("window id").value="0"

'        Set a3 = Description.Create()
'        a3("Class Name").value="WinObject"
'        a3("text").value= use + ".xls"

'        Window(a1).WinObject(a3).Type micCtrlDwn + "s" + micCtrlUp

        Dim WshShell
        Set WshShell=CreateObject("Wscript.Shell")
        WshShell.SendKeys "^s"
        wait(1)
       
        srcData.Workbooks.Close
        Set srcDoc = nothing
       
        Window("text:=Microsoft Excel").Close
End Function

walker1020 发表于 2007-8-28 00:22:52

yuandjing ,你能否说一下 #42 中的许多语句被注释掉的原因吗?谢谢!

yuandjing 发表于 2007-8-28 08:59:30

回walker1020大哥:
原来是想用描述性编程的思想实现点击ctrl+s进行保存操作Window(a1).WinObject(a3).Type micCtrlDwn + "s" + micCtrlUp
后来发现Excel版本不同,描述性编程的值也不同,有些认a1("text").value="Microsoft Excel - " + use + ".xls",有些认a1("text").value="Microsoft Excel - " + use
所以后来改用sendkey的方法:WshShell.SendKeys "^s"
来实现了crtl+s进行保存了,各个版本的excel就都适用了

walker1020 发表于 2007-8-28 09:14:44

非常感谢yuandjing 的回复。原来是这样,yuandjing 考虑问题真周到,因为你还考虑到了各个Excel 的兼容性,受教了。 多谢!

shoulamon 发表于 2007-8-28 11:36:57

学习了

zhangj8826 发表于 2007-9-2 22:50:41

关注!

木卫十二 发表于 2007-9-3 09:47:31

回复 #42 yuandjing 的帖子

我有一个问题,就是pathway必须是绝对路径,对于脚本移置不大方便,有没有用相对路径的办法啊?sdlkfj6

www1816 发表于 2007-9-3 09:57:56

学习中

yuandjing 发表于 2007-9-4 15:53:07

原帖由 木卫十二 于 2007-9-3 09:47 发表 http://bbs.51testing.com/images/common/back.gif
我有一个问题,就是pathway必须是绝对路径,对于脚本移置不大方便,有没有用相对路径的办法啊?sdlkfj6
我试了一下,相对路径是可以的,比如vbs保存在C:\vbs文件夹下,excel在c:\下
只要call QTP_Write_Excel("../xxx.xls","sheetname",1,1,"content")就可以了

xinxiachen 发表于 2007-9-4 20:31:13

sdlkfj2

three116 发表于 2007-9-14 16:23:33

好 代码

three116 发表于 2007-9-14 16:23:48

顶一下

bamboosll 发表于 2009-7-3 11:54:47

这个lib很有用啊!

denghuirong 发表于 2010-1-22 11:22:08

学习了

多谢

Tesherlock 发表于 2010-1-25 17:00:26

好东西,学习了,3Q~

gold_85 发表于 2010-2-22 16:37:13

好东西,留个记号..

hello97 发表于 2010-2-24 01:03:25

好东西留下了:lol

醉看夕阳红 发表于 2010-2-26 14:12:57

新人顶贴

zhengpeipei 发表于 2010-2-26 16:10:11

学习了
页: 1 2 [3]
查看完整版本: 如何将脚本运行完的结果存入EXCEL中