到底怎样使用QTP操作Excel表格?网上说的没一个能用的!
我只不过想把一个Sheet表中的一个单元格的值取出来,从网上找到这样一个函数,而且注释好像还是错的:********************************************************************' 函数说明:获取工作表excelSheet单元格的值
' 参数说明:
' (1)excelSheet:工作表名称;
' (2)row:列的序号;
' (3)column:行的序号;
' 返回结果:
' (1)单元格存在,返回单元格值;
' (2)单元格不存在,返回0;
' 调用方法:
' set CellValue = GetCellValue(excelSheet, 1, 2)
' ********************************************************************Function GetCellValue(excelSheet, row, column)
value = 0
Err = 0
On Error Resume Next
tempValue = excelSheet.Cells(row, column)
If Err = 0 Then
value = tempValue
Err = 0
End If
On Error GoTo 0
GetCellValue = value
End Function
********************************************************************
Val = GetCellValuel(result,1,5)
“result”是Sheet名,这样用法到底问题出在哪里呢?
总是报错,类型不匹配。 1、你现在用的是一组函数中的一个,他们肯定是有相互调用关系的,你拷出这几行没有意义;
2、on error resume next对于vbs初学者在调试过程中没有任何好处,去掉之后你或许能得到一点有用的信息;
3、给个傻瓜例子吧,你所谓网上“没一个能用的”不会是天涯水区或者偷菜的网站吧。'***************************************************************************************************************************
'设计说明: 读指定行和列的EXCEL的值
'程序输入:
' 1. sheetName -- 读取的SHEET;
' 2. rowNum -- 指定行;
' 3. colNum -- 指定的行;
' 4. appointedFile -- 文件全路径(含文件名称和后缀名)
'程序输出: 读取的指定单元格的值
'设计人员: XXXXX
'设计时间: 2008-11-05
'调用举例: Msgbox GetExcelCellValue("指定页",3,4,"D:\test.xls")
'***************************************************************************************************************************
Public Function GetExcelCellValue(sheetName, rowNum, colNum, appointedFile)
On Error Resume Next
Set fObject = CreateObject("Scripting.FileSystemObject")
If Not fObject.FileExists(appointedFile) Then
Report micFail,"参数文件不存在:","指定文件:【" & appointedFile & "】未找到,请确认文件路径!"
Set fObject = Nothing
Exit Function
End If
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = False
ExcelApp.DisplayAlerts = False '隐藏EXCEL的告警提示
Set newBook = ExcelApp.Workbooks.Open(appointedFile,False,True)'只读模式
newBook.Worksheets(sheetName).Activate
GetExcelCellValue = newBook.Worksheets(sheetName).Cells(rowNum, colNum).Value
Set newBook = Nothing
ExcelApp.Quit
Set ExcelApp = Nothing
Set fObject = Nothing
End Function 非常感谢楼上的,代码收藏了!
昨天我的也解决了,用了三步:
Set excobj = createobject("excle.application")
set excfilr = excobj.workbooks.open(filepath)
set excshet = excfile.workseets(sheetname)
页:
[1]