1、程序设计思路:(1)程序要对单元格里边的每一个字进行对比判断,则需要使用到Mid截取函数,即:Mid(要截取的字符,起始位就女蒿鸳置,截取的个数)。(2)截取一个字符之后再逐一去与其他字符比较,相同则计1,满足条件则说明他们是存在相同的字符,此时就要用到For……Next嵌套使用。(3)For……Next的循环次数主要是根据单元格的字符长度来循环的,此时就需要使用到统计字符长度函数Len,即:Len(要统计字符长度的单元格)。
2、打开Excel表格后,点击【开发工具】、【Visual Basic】打开VBA编辑器,也可以使用【Alt+F11】组合键打开VBA编辑器。
3、在VBA编辑器的菜单栏上边点击【插入】、【模块】,或者依次按【Alt】、【I】、【M】键插入模块。
4、在模块的代码框里面输入以下VBA程序代码,然后按下【F5】键运行,也可以点击工具栏氇筐塘瓠里面的“运行”图标运行程序。Sub Chk()Dim i1, i2, i泌驾台佐3, i4, i5, i6, m1, m2On Error Resume Next '忽略运行中可能出现的错误Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表For i1 = 2 To 100 '从第2行到100行If mysheet1.Cells(i1, 1) <> "" Then '如果单元格不是空白,则 i4 = 0 '中间变量(统计相同个数)初始化 i5 = (Len(mysheet1.Cells(i1, 2))) '获取B列相应单元格字符长度 i6 = (Len(mysheet1.Cells(i1, 1))) '获取A列相应单元格字符长度 For i3 = 1 To i5 'B列相应单元格从第1个字符到末尾的字符长度 m1 = Mid(mysheet1.Cells(i1, 2), i3, 1) '截取字符 For i2 = 1 To i6 'A列相应单元格从第1个字符到末尾的字符长度 m2 = Mid(mysheet1.Cells(i1, 1), i2, 1) '截取字符 If m2 = m1 Then '如果存在相同字符,则加1 i4 = i4 + 1 End If Next NextIf i4 = i5 Then '如果B列对应单元格的字符数与相同字符数相等,则 mysheet1.Cells(i1, 3) = "Yes"Else mysheet1.Cells(i1, 3) = "No"End IfEnd IfNextEnd Sub
5、回到Excel表格界面,将会看到程序执行的结果。