EXCEL中如何实现多个关键字在多个单元格中的查找
如A1-A4单元格分别如下:
中国人在东北
你好
黄河真伟大
中国人在西安
C1-C2单元格内容(即关键字):
中国
好
如果A1-A4包含C1-C2中内容
则在B1-B4单元格显示包含的C1-C2的内容(即关键字)
实现后的样子如下
A列 B列 C列
中国人在东北 中国 中国
你好 好 好
黄河真伟大
中国人在西安 中国
条件不多的话,可以拼条件。如下:
=IF(ISERROR(FIND($C$1,$A1,1)),'',$C$1) &
IF(ISERROR(FIND($C$2,$A1,1)),'',$C$2)
如果条件多,VBA更简单。
用公式也可以解决。在B1输入=IF(ISERROR(FIND(C1,A1)),'',C1),然后向下拉。
Sub yy()
Dim rng, i%, r%, c As Range
With Sheet1
rng = .Range(.[c1],
.[c65536].End(xlUp))
For i = 1 To UBound(rng)
Set c = .[a:a].Find('*'
& rng(i, 1) & '*', [a65536])
If Not c Is Nothing
Then
r = c.Row
Do
c(1, 2) =
如A1-A4单元格分别如下:
中国人在东北
你好
黄河真伟大
中国人在西安
C1-C2单元格内容(即关键字):
中国
好
如果A1-A4包含C1-C2中内容
则在B1-B4单元格显示包含的C1-C2的内容(即关键字)
实现后的样子如下
A列 B列 C列
中国人在东北 中国 中国
你好 好 好
黄河真伟大
中国人在西安 中国
条件不多的话,可以拼条件。如下:
=IF(ISERROR(FIND($C$1,$A1,1)),'',$C$1)
如果条件多,VBA更简单。
用公式也可以解决。在B1输入=IF(ISERROR(FIND(C1,A1)),'',C1),然后向下拉。
Sub yy()
Dim rng, i%, r%, c As Range
