VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
查看: 91|回复: 4

[求助] 这段简单的查找,如何把EXCEL中的VBA改成VB?

[复制链接]
发表于 7 天前 | 显示全部楼层 |阅读模式
各位前辈好,在EXCEL中有如下 代码,查找  字符串“我” 在数字Arr中是第几个位置:
  1. Sub 查找包含()
  2.     Dim Arr(), A$
  3.     Arr = Array("一团和气", "二心二意", "三头六臂", "我", "和", "你", "rt5", "de3")
  4.     A = "我"
  5.     msgbox WorksheetFunction.Match(A, Arr, 0)
  6. End Sub
复制代码

       如果我把它引用到VB中来,需要引用EXCEL。
       如果不引用EXCEL等,同时也不使用For和Do等循环遍历查找,有办法快速达上面的要求,查找  字符串“我” 在数字Arr中是第4个位置 吗?
       谢谢指点。
发表于 6 天前 | 显示全部楼层
本来WorksheetFunction.Match(A, Arr, 0)就是个函数,在这个函数内部就是用循环查找的。
你写个查找函数就是了。

评分

参与人数 1威望 +8 人气 +1 收起 理由
bruly + 8 + 1 很给力

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| 发表于 6 天前 | 显示全部楼层
yiziwuya 发表于 2018-6-12 07:49
本来WorksheetFunction.Match(A, Arr, 0)就是个函数,在这个函数内部就是用循环查找的。
你写个查找函数就 ...

请问这个自带函数,一般而言和我们自己写的函数,在数据比较多的查找情况下,哪个速度会更快一点呢?
回复 支持 反对

使用道具 举报

发表于 5 天前 | 显示全部楼层
本来就是一次循环,速度应该一样,除非那个函数不是用vb写的,直接汇编
回复 支持 反对

使用道具 举报

 楼主| 发表于 5 天前 | 显示全部楼层
yiziwuya 发表于 2018-6-13 08:02
本来就是一次循环,速度应该一样,除非那个函数不是用vb写的,直接汇编

首先感谢老师再次指点。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

文字版|手机版|小黑屋|VBGood  

GMT+8, 2018-6-18 06:19

VB爱好者乐园(VBGood)
快速回复 返回顶部 返回列表