本帖最后由 On_fire 于 2017-11-7 17:32 编辑
怎么实现中文配对?
1. Data页, 格内数据是中文及英文或字符组合
2. Match页 (代码执行说明), 代码将所有中文字有重复的, 都找出来(当配对上,已经用颜色标注)! (代码_条件首2个, 3个, 4个,5个或6个中文字, 需求完全配对)
3. ARR页, 模拟结果, 配对后, 排成一行 (注:不用顺序)
数据n多, 请大神, 老师帮帮忙...谢谢!!!
- Sub 匹配()
- arr = Sheets(1).UsedRange
- brr = Sheets(2).UsedRange
- Set d = CreateObject("scripting.dictionary")
- With CreateObject("vbscript.regexp")
- .Global = True
- .Pattern = "[^\u4e00-\u9fa5]"
- For Each x In arr
- If Len(x) > 0 Then
- y = .Replace(x, "")
- d(y) = ""
- End If
- Next
-
- For Each x In brr
- If Len(x) > 0 Then
- y = .Replace(x, "")
- If d.exists(y) Then d(y) = d(y) & "|" & x
- End If
- Next
- End With
-
- With Sheets(3)
- r = 10
- .Cells(r, 1).Resize(100, 100).Clear
- For Each y In d.keys
- If InStr(d(y), "|") Then
- yrr = Split(Mid(d(y), 2), "|")
- r = r + 1
- .Cells(r, 1).Resize(1, UBound(yrr) + 1) = yrr
- End If
- Next
- End With
- End Sub
复制代码
|