51Testing软件测试论坛
标题:
QTP中如何实现删除EXCEL的某几行
[打印本页]
作者:
milo.jiang
时间:
2007-8-22 22:13
标题:
QTP中如何实现删除EXCEL的某几行
在EXCEL的VBA中可以直接通过objSheet.Rows(i).delete实现删除某行,可是在QTP中却无法运行以上脚本,请教高手如何能够实现?
作者:
walker1020
时间:
2007-8-23 00:47
为什么要删除某几行的数据? 要知道脚本里面要用到这些数据呢。实在 不行就手动删除吧
作者:
hsjzfling
时间:
2007-8-23 02:04
把删除行的代码完整的写在VBS中,然后用QTP执行Executefile "..\xxx.vbs",这样应该能达到目的,尝试下吧~
作者:
yuandjing
时间:
2007-8-23 08:31
我可以提供一个自己写的删除vbs的函数
'写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
srcData.Workbooks.Close
Set srcDoc = nothing
Window("text:=Microsoft Excel").Close
End Function
作者:
yuandjing
时间:
2007-8-23 08:32
删除就是写入空值就可以了
如果脚本跑到Window(a1).WinObject(a3).Type micCtrlDwn + "s" + micCtrlUp就停了,请把
a1("text").value="Microsoft Excel - " + use + ".xls"
a3("text").value= use + ".xls"
改为
a1("text").value="Microsoft Excel - " + use
a3("text").value= use
就可以了
因为EXCEL版本不同
作者:
milo.jiang
时间:
2007-8-23 09:07
谢谢大家的指点,我尝试一下以上方法,再将可行方法的实例附上,谢谢
作者:
bobile
时间:
2007-8-23 09:54
说的不是很详细了
作者:
v_v
时间:
2007-8-26 01:04
标题:
回复 #6 milo.jiang 的帖子
期待中。。。。
作者:
nkzyb
时间:
2007-8-26 09:29
我一般都是手动删除来修改数据表格的,那样也挺快的
作者:
sstars
时间:
2007-8-26 21:48
....
Set xsl= CreateObject("Excel.Application")
xsl.Application.DisplayAlerts = False
Set workbook= XLApp.Workbooks.Open("d:\ab.xls",readOnly=False)
workbook.Sheets("Sheet1").Rows(1).delete
...
作者:
450683057
时间:
2012-9-26 17:43
'清空Excel中数据
Set ExcelObj=CreateObject("Excel.Application")
xlsUrl="D:\QTP—数据中心\TestDate\OrderDate.xls"
'打开工作表
ExcelObj.Workbooks.Open(xlsUrl)
'清空工作表中数据
Set oSheet =ExcelObj.ActiveSheet
FOR i=30 TO 1 STEP -1
osheet.Rows(i).delete
Next
Set Shell = CreateObject("WScript.Shell")
Set ShellResult = Shell.Exec("TaskList")
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2