deadhunter 发表于 2010-7-30 14:55:11

VBS,怎样根据内容来查找excel中对应的位置?

例如:表格中有值为123,我要找到表格中所有值为123的位置?

feiyunkai 发表于 2010-7-30 16:35:54

函数如下:

Public function getrowandcol(filepath,sheetname,data)
'函数作用:获取指定字符串在EXCEL中的位置
'参数说明
'filepath:EXCEL所在路径
'sheetname:SHEET名称
'data:需要查找的字符串
'用法示例:getrowandcol"D:\qqq.xlsx","sheet1","123"
Setexcel=CreateObject("Excel.Application")
set openexcel=excel.Workbooks.Open(filepath)
openexcel.WorkSheets(sheetname).Activate
rowcount =openexcel.ActiveSheet.UsedRange.Rows.Count   '获sheet总行数
Columnscount =openexcel.ActiveSheet.UsedRange.Columns.count '获sheet总列数
                For i=1 to rowcount
                              For j=1 to Columnscount
                                           If cstr(openexcel.WorkSheets(sheetname).Cells(i,j ))=datathen '将EXCEL中数据转化为字符串类型与传入的字符串进行比较
                                                          print data&" 所在行为:"&i&" 所在列为: "&j
                                           end if
                              Next
                Next
openexcel.Close                                 
excel.Quit                                                   
set openexcel=nothing      
Setexcel=nothing
End Function

[ 本帖最后由 feiyunkai 于 2010-7-30 16:39 编辑 ]

deadhunter 发表于 2010-7-30 17:26:26

:handshake 谢谢
页: [1]
查看完整版本: VBS,怎样根据内容来查找excel中对应的位置?