iRng.Offset(-1, 0).Value Then MsgBox "不相百同度!" Exit SubElse " />
乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>EXCEL</em> VBA 比较两个单元格 内容 相似程度-excel 宏 单元格内容

<em>EXCEL</em> VBA 比较两个单元格 内容 相似程度-excel 宏 单元格内容

作者:乔山办公网日期:

返回目录:excel表格制作


Public Sub aaa()
Dim iRng As Range: Set iRng = Range("B" & Selection.Row)
If iRng.Value <> iRng.Offset(-1, 0).Value Then
MsgBox "不相!"
Exit Sub
Else
MsgBox "相同!"
End If
End Sub

----------
如果想加入其他动作,可以将“不相同”和“相同”的两个msgbox换成需要的动作

朋友,你这里要求要一个整体的函数7a64e59b9ee7ad94336,或许你不知道你这样的文本长度不对等的两个文本的对比是有多难。我们没法告诉电脑到底应该按照怎么样的规律进行对比。稍微有一点逻辑上的出入,得出的结果就将大相径庭。希望你们以后提问的时候可以尽量的把问题说清楚,最好的是附带实际表格的图片。
或许你认为这样的对比很简单不过了。但是其实不是你想的那样

下面给一个简单的自定义函数的代码吧。希望你能用。这个是最简单的逻辑。如果你需要的是其他的对比的方法的话,你追问一下,我尝试帮你解决
Function TXB(TXA As String, TXC As String)
Dim L As Integer
L = 0
s = Len(TXA)
For x = 1 To s
If Left(TXA, x) = Left(TXC, x) Then
L = L + 1
End If
Next x
TXB = L / s
End Function
这个是自定义函数宏。根据你的描述,应该是有VBA基础吧。
但是这个宏只适用于两个文本的长度是一样的的时候,长度不一样的话,太难比较。

需要的话,你就直接粘贴代码到VBA模块里。返回表格使用函数 TXB
具体格式是 =TXB(文本一,文本二)
Sub PList()
Dim i&, Myr&, Arr
Range("B:B").Clear
Application.ScreenUpdating = False
Myr = Sheet1.[A65536].End(xlUp).Row
Arr = Sheet1.Range("A1:A" & Myr)
For i = 2 To UBound(Arr)
If Arr(i, 1) <> Arr(i - 1, 1) Then
Cells(i, 2) = Arr(i, 1)
End If
Next
Application.ScreenUpdating = True
End Sub

检查B列相同zhidao单元格,放在C列

以下为代码及详解:

Sub main()
Rng = Range("B" & Selection.Row)'定义变量rng为B列选中区域所在行
If Rng.Value <> Rng.Offset(-1, 0).Value Then'判断这个单元格的值与它上一个单元格的值是否一致
MsgBox "不相同!"'如果不一致,则弹出提示框“不相同”
Exit Sub'退出程序
Else
MsgBox "相同!"'如果一致,则弹框提示”相同“
End If
End Sub

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网