判断Excel单元格是否包含其他单元格字符
1、打开Excel表格,点击【开发工具】、【Visual Basic】。

2、VBE编辑器的菜单栏上面点击【插入】、【模块】。

3、模块代码框里边输入以下VBA程序代码。
Sub Include_All()
Dim i1, i2, i3, i4, i5, Str1
On Error Resume Next '忽略运行过程中可能出现的错误
Application.ScreenUpdating = False '关闭屏幕更新
Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义Sheet1
For i1 = 2 To 1000 '从第二行到1000行
If mysheet1.Cells(i1, 1) <> "" And mysheet1.Cells(i1, 2) <> "" Then
'如果单元格都不是空白,则
i4 = 0
i5 = Len(mysheet1.Cells(i1, 2)) '获取单元格字符串长度
For i2 = 1 To i5
Str1 = Mid(mysheet1.Cells(i1, 2), i2, 1) '截取字符
i3 = InStr(1, mysheet1.Cells(i1, 1), Str1, 0) '判断字符所在位置
If i3 <> 0 Then
i4 = i4 + 1
End If
Next
If i4 = i5 Then '如果累计的次数与字符个数相符,则
mysheet1.Cells(i1, 3) = "是"
Else
mysheet1.Cells(i1, 3) = "否"
End If
End If
Next
Application.ScreenUpdating = True '恢复屏幕更新
End Sub

4、检查无误后,在VBE功能区里面点击“运行”图标运行程序。

5、回到Sheet1工作表界面,将会看到程序执行的判断结果。

1、VBA程序释义,方法、思路总结:
1、Excel表格上面可以使用截取函数MID截取字符,借助辅助列的单元格存放截取出来的每一个字符,再进行比较、判断,相对来说比较麻烦。
2、通过截取单元格里面的每一个字符,再逐一去判断它是否存在,存在则累计1,累计的次数与该单元格字符串长度相符,则说明原来的单元格全部包含它。
3、Len是获取字符串的长度(个数),Mid是截取所需字符,Instr是判断字符所在的位置。
4、如果要执行判断的单元格较多,先关闭Excel显示更新,判断完成之后再恢复,以提高程序的运行速度。
