本文转载自公众号:Excel之家ExcelHome,作者:随风。 https://mp.weixin.qq.com/s/iGD3FkNDq-yXTAqRjP1TyQ 老板说,很多公司他都记不住全称,能不能输入个关键字就把包含关键字的名字全列出来? 效果像下图所示: 操作步骤如下: Step 01: 右键单击工作表标签→查看代码 Step 02: 把下面的代码复制进事件代码窗口: Private Sub Worksheet_Change(ByVal Target As Range) Dim rng As Range Application.EnableEvents = False '禁用事件(由于这是单元格变化即可触发事件,我们还要对单元格进行录入数据) If Target.Address = '$C$2' Then '限定触发事件的单元格为C2单元格(target表示触发事件的单元格) Range('d2:d100').ClearContents '清除上一次的查询结果 For Each rng In Range('a2:a58') '遍历区域 If rng.Value Like '*' & Target.Value & '*' Then 'like关键字匹配包含条件的数据 *表示任意长度字符 i = Cells(Rows.Count, 4).End(xlUp).Row 1 '获取D列最后一个非空单元格行号 Cells(i, 4) = rng.Value '记录查询结果 End If Next End If Application.EnableEvents = True '启用事件 End Sub
图文制作:随风 ExcelHome云课堂讲师 ExcelHome云课堂 专业的职场加油站 |
|