作者:乔山办公网日期:
返回目录:excel表格制作
这个问题比较麻烦,我最近刚好在弄这个
下面这段VBA是别人写的,可e799bee5baa6e79fa5e98193e58685e5aeb9361以简单的判定相似度,你可以插入到模块,然后可以用公式sim(文本1,文本2)。
Private Function min(one As Integer, two As Integer, three As Integer)
min = one
If (two < min) Then
min = two
End If
If (three < min) Then
min = three
End If
End Function
Private Function ld(str1 As String, str2 As String)
Dim n, m, i, j As Integer
Dim ch1, ch2 As String
n = Len(str1)
m = Len(str2)
Dim temp As Integer
If (n = 0) Then
ld = m
End If
If (m = 0) Then
ld = n
End If
Dim d As Variant
ReDim d(n + 1, m + 1) As Variant
For i = 0 To n
d(i, 0) = i
Next i
For j = 0 To m
d(0, j) = j
Next j
For i = 1 To n
ch1 = Mid(str1, i, 1)
For j = 1 To m
ch2 = Mid(str2, j, 1)
If (ch1 = ch2) Then
temp = 0
Else
temp = 1
End If
d(i, j) = min(d(i - 1, j) + 1, d(i, j - 1) + 1, d(i - 1, j - 1) + temp)
Next j
Next i
ld = d(n, m)
End Function
Public Function sim(str1 As String, str2 As String)
Dim ldint As Integer
ldint = ld(str1, str2)
Dim strlen As Integer
If (Len(str1) >= Len(str2)) Then
strlen = Len(str1)
Else
strlen = Len(str2)
End If
If strlen = 0 Then sim = 0 Else sim = 1 - ldint / strlen
End Function
其他的话,你还可以通过like等函数去判断。excel没提供直接判断的公式。
=IF(ISNUMBER(FIND(A2,A1)),"包含","")
=IF(COUNTIF(A1,"*"&A2&"*"),"包含","")
=IF(LEFT(A1,LEN(A2))=A2&"","包含","")
材料/工具:Excel2010
1、打开表格百Excel2010。
2、在c1输入“百分度比”。
3、在c2输入公式“=b2/$b$5”。
4、输入后敲回车键,百分比就算出来问了。
5、拖动鼠标复制公式到其他答单元格,求出其他百分比。
6、然后选中所有百分比,右击单元格。
7、选内择设置单元格格式。
8、选中百分比,系统默认小数点后两位容数,点击确定。
9、就都以百分比符号显示了。
写代码来处理,这总应该以空格分隔单词,在计算百分比