ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: amy-0018

求助!如何查找不完全重复项(疑似匹配)??

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-7-11 12:43 | 显示全部楼层
需排除的非关键词,你也可直接指定不用YJHCWS统计

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-11 12:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
coby001 发表于 2015-7-11 12:11
这种问题,用正则表达式可轻松解决~~

求表达方式,求助求助

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-11 14:25 | 显示全部楼层
yjh_27 发表于 2015-7-11 12:43
需排除的非关键词,你也可直接指定不用YJHCWS统计

我在宏——VBA——模板里,是这样修改的:
Sub aa()
arr = [a2:a3505]
brr = [b2:b5464]

crr = YJHCWS(arr)
For i = UBound(crr) To 1 Step -1  
    If crr(i, 2) > 1 Then Exit For    '1次以上的非关键词
Next
pc = i
For i = 1 To UBound(brr)
    For ii = 1 To pc
        brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "")        '移除非关键词
    Next
    if len(brr(i, 1))>1 then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)         '2个及以上开始计数计数2个以上为匹配
Next
[c2:c49] = brr
End Sub


A列为数据1,B列为数据2,C列为我手工查找的非关键字(需排除的),然后在D2输入:=YJHCWS($a$2:$a$3505),然后按住ctrl+shift+enter,然后D2单元格出现的是:#NAME?

对不起啊老师,我太笨了,是不是我哪里没有操作正确啊?

TA的精华主题

TA的得分主题

发表于 2015-7-11 17:40 来自手机 | 显示全部楼层
Sub aa() arr = [a2:a3505] brr = [b2:b5464]  crr = [c2:c49]  For ii = 1 To uboud(crr)         brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "")        '移除非关键词     Next     if len(brr(i, 1))>1 then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)         '2个及以上开始计数计数2个以上为匹配 Next [d2:d5464] = brr End Sub

TA的精华主题

TA的得分主题

发表于 2015-7-11 17:43 来自手机 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
其他模块,相关代码需保留。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-12 12:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yjh_27 发表于 2015-7-11 17:43
其他模块,相关代码需保留。

老师您好!
我按您的指示去过,可是总是提示“缺少end sub”或者其他。
我的步骤是这样的,麻烦您看一下,是否有什么问题。
工具——宏——vba——模板——用户窗体——命令按钮——双击命令按钮——复制代码1/2——点击继续按钮(小三角形),回到excel表格点击命令按钮,提示——编译错误:缺少End Sub。
以下是我尝试的代码
代码1:
Sub aa()
arr = [a2:a3505]
brr = [b2:b5464]
crr = [c2:c49]
For ii = 1 To uboud(crr)
brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "")        '移除非关键词
Next
if len(brr(i, 1))>1 then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)         '2个及以上开始计数计数2个以上为匹配
Next
[d2:d5464] = brr
End Sub
代码2:
Sub aa()
arr = [a2:a3505]
brr = [b2:b5464]
crr = [c2:c49]
For ii = 1 To uboud(crr) To 1 Step -1
If crr(i, 2) > 1 Then Exit For    '1次以上的非关键词
Next
pc = i
For i = 1 To UBound(brr)
    For ii = 1 To pc
brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "") '移除非关键词
Next
if len(brr(i, 1))>1
then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)         '2个及以上开始计数计数2个以上为匹配
Next
[d2:d5464] = brr
End Sub


我也试过再加一个end sub,可是这个提示就是不消失,一直提示着。
是哪里出了错吗?麻烦老师了。很对不起,我这么笨……

TA的精华主题

TA的得分主题

发表于 2015-7-12 17:17 来自手机 | 显示全部楼层
手机回复,代码1少了一句: For i = 1 To UBound(brr)      For ii = 1 To

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-12 17:52 | 显示全部楼层
yjh_27 发表于 2015-7-12 17:17
手机回复,代码1少了一句: For i = 1 To UBound(brr)      For ii = 1 To

老师好!您这句话是要加在哪里呢?我的代码2里含这句话的。不过,Fii=1 To后面是不是还有内容pc?
盼复

TA的精华主题

TA的得分主题

发表于 2015-7-12 17:58 来自手机 | 显示全部楼层
用代码1。 在For ii行前补 For i代码行

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-12 19:34 | 显示全部楼层
yjh_27 发表于 2015-7-12 17:58
用代码1。 在For ii行前补 For i代码行

老师您好!我按提示,代码改写及excel的提示如下,
代码3
Private Sub CommandButton1_Click()
Sub aa()
arr = [a2:a3505]
brr = [b2:b5464]
crr = [c2:c49]
For i = 1 To UBound(brr)
For ii = 1 To uboud(crr)
brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "")        '移除非关键词
Next
If Len(brr(i, 1)) > 1 Then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)       '2个及以上开始计数计数2个以上为匹配
Next
[d2:d5464] = brr
End Sub

编译错误:缺少end sub


代码4
Private Sub CommandButton1_Click()
arr = [a2:a3505]
brr = [b2:b5464]
crr = [c2:c49]
For i = 1 To UBound(brr)
For ii = 1 To uboud(crr)
brr(i, 1) = Replace(brr(i, 1), crr(ii, 1), "")        '移除非关键词
Next
If Len(brr(i, 1)) > 1 Then brr(i, 1) = FuzzyLookup(brr(i, 1), arr, , 2, 2, 4)       '2个及以上开始计数计数2个以上为匹配
Next
[d2:d5464] = brr
End Sub
编译错误:子过程或函数未定义


麻烦您了

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-15 12:38 , Processed in 0.039702 second(s), 5 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表