|
7#
楼主 |
发表于 2010-7-30 16:01:42
|
只看该作者
感谢楼上提供的思路,我没有机会测试这种方法,因为我需要的不是这种形式的。
其实也怪我一直没有表达清楚我想要什么,我下面贴段代码来表述我想要什么,以便大家一起探讨.
由于我很多脚本中都用到了下面这个结构
sName=DataTable.GetSheet(dtlocalsheet).Name
DataTable.ImportSheet "..\..\Data\"&"JTUn_Function_Data"&".xls","Merchant_Info_Search",sName
rowCount=DataTable.GetSheet(dtlocalsheet).GetRowCount
For n=1 to rowCount
DataTable.GetSheet(dtlocalsheet).SetCurrentRow n
......
Next
所以我就想把相同部分的代码独立出来设成一个可供调用的函数,而把其中各脚本独特的部分封装成一个函数(......省略的部分)
因而我就写成了如下形式:
Sub subA(ExcelName,SheetName,subB)
sName=DataTable.GetSheet(dtlocalsheet).Name
DataTable.ImportSheet "..\..\Data\"&"ExcelName"&".xls",SheetName,sName
rowCount=DataTable.GetSheet(dtlocalsheet).GetRowCount
For n=1 to rowCount
DataTable.GetSheet(dtlocalsheet).SetCurrentRow n
subB
Next
然后去调用
subA "JTUn_Function_Data","Merchant_Info_Search",subB
虽然逻辑很简单,但显然有什么地方不对,在将subB作为参数时,执行时报 类型不匹配 的错,查了一下资料,没有找到VBS支持通过参数传入函数的内容,故发帖请教大家! |
|