Private Sub Worksheet_Change(ByVal Target As Range)
Dim Arr, i&, j&, Rng As Range, Dic As Object, St$, k&
Arr = Array("自己", "幸福", "爱情", "好的", "城市")
Set Dic = CreateObject("Scripting.Dictionary")
For Each Rng In Range("K11,P11,U11,Z11")
Dic(Rng.Value) = ""
Next Rng
For i = 0 To UBound(Arr)
k = 0
For j = 1 To Len(Arr(i))
If Dic.Exists(Mid(Arr(i), j, 1)) Then k = k + 1
Next j
If k = Len(Arr(i)) Then St = St & vbLf & Arr(i)
Next i
Set Dic = Nothing
Application.EnableEvents = False
If Len(St) > 0 Then
[B22] = Mid(St, 2)
Else
[B22] = Empty
End If
Application.EnableEvents = True
End Sub
change 事件是指单元格内容发生改变而激活程式,点击就相当于再次编辑,只是内容为原来的。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-06-07
点击不够,必须编辑。