Excel的宏里边,有没有办法让函数或者子程序返回两个或者更多的值?

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:09:20
我打算编一个子程序,用来在一段html代码里查找两个特征符之间的值,比如“<br>”和“</br>”之间。设想如下:

private sub PickData(DataText as string,HeadText as string,EndText as string,BeginNum as integer,ReturnText as string)
dim StartNum as integer
dim EndNum as integer
dim l as integer
startnum=instr(beginnum,datatext,headtext)
if startnum=0 then
returntext=""
end
endif
endnum=instr(startnum,datatext,endtext)
if endnum=0 then
returntext=""
end
endif
l=len(headtext)
returntext=mid(datatext,startnum+l,endnum-startnum-l)
begintext=endnum
end sub

因为要多次查找具有相同首尾特征的字串,所以我希望ReturnText和BeginNum都能返回,有什么办法可以实现?望各位高人赐教。

返回值只能是一个,但类型可以随便,比如你返回一个数组就可以是多个值了,但这个数组不能显式返回只能利用Variant型,再进行转化回来。

还有一种这个比较方便简单:就是利用ByRef去定义参数它指的是地址传值,而ByVal是传值的。传址就可以改变原值。那么你要多少个返回值,只需要多加参数就OK了。