首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

deepseek+excel,实现不输入函数就可以模糊匹配的教程

我们在工作中经常遇到表格处理的情况,就是有时我们需要用到模糊匹配,这就需要lookup函数或者Vlookup函数以及通配符才可以实现,对应好多小白来说,一不小心就出错了。今天我们来学习一下,通过deepseek编写的代码,来实现直接点击就可以实现

1、首先我们把我们需要解决的问题尽可能描述,比如我模糊匹配我是这样描述的:WPS里面Sheet1表的A列有简短的名称,Sheet2的A列有完整的名称,需要用VB把Sheet2里面A列完整的名称匹配到Sheet1里面的B列一一对应,通过通配符实现

2、之后他就会生成如下代码,我们直接不需要改就可以复制进去

Sub MatchNamesOptimized()

  Dim ws1 As Worksheet, ws2 As Worksheet

  Set ws1 = ThisWorkbook.Sheets("Sheet1")

  Set ws2 = ThisWorkbook.Sheets("Sheet2")

  ' 将Sheet2的A列数据一次性读入数组

  Dim sheet2Names() As Variant

  sheet2Names = ws2.Range("A2:A" & ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row).Value

  ' 遍历Sheet1的A列

  For i = 2 To ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row

      Dim shortName As String

      shortName = ws1.Cells(i, 1).Value

      ' 在数组中进行匹配

      For j = 1 To UBound(sheet2Names, 1)

          If sheet2Names(j, 1) Like "*" & shortName & "*" Then

              ws1.Cells(i, 2).Value = sheet2Names(j, 1)

              Exit For 

          End If

      Next j

  Next i

End Sub

3、我们再把我们需要模糊匹配的表格打开,有2个工作表,第一个是我们需要模糊匹配的,第二个是名称的全称

4、我们在工具栏里面选择开发工具再选择查看代码

5、然后我们在选择第一个工作表,点击插入,再选择模块

6、我们再把deepseek生成的代码复制进去           

7、然后我们选择运行,再点击运行子过程/用户窗体,这样稍等一会后,就会出结果了

8、我们可以看到,如果能匹配的就能匹配完整的名称,如果再表二里面匹配不到的,就显示的是空,这对于对函数不熟悉的小伙伴来说特别方便。        

另外小编也发给大家,需要的小伙伴赞赏任意金额获取(注意先关注再赞赏)

下载完成后点开开发工具,然后点击运行宏 

点击运行宏后出现如下宏,我们直接点击运行就可以

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OIGaqIPEi9RryNC6B7BPJhxA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券