VBA一对多模糊查询简单代码

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$F$2" Then Call LikeSearch '当变更单元格为F2时,执行模糊查询
End Sub
Sub LikeSearch()
    Dim RowMax As Long '定义B列最大行序号
    Dim RowIndex As Long '定义B列循环中行序号
    Dim NewRowIndex As Long '定义E、F列取值行序号
    Sheet1.[E6:F65536].ClearContents '清除E、F列内容
    RowMax = Sheet1.[B65536].End(xlUp).Row '获取B列最大行序号
    NewRowIndex = 6 '赋值6为E、F列起始行序号,原因是模板制作的时候就是从第6行开始的
    '循环匹配是否满足要求,满足要求则将C列值提取到F列中
    For RowIndex = 3 To RowMax
        If Sheet1.Range("C" & RowIndex) Like "*" & Sheet1.[F2] & "*" Then '当循环至C列当前行序号单元格内容包含F2单元格内容时
            Sheet1.Range("E" & NewRowIndex) = NewRowIndex - 5 '将查询顺序列到E列中
            Sheet1.Range("F" & NewRowIndex) = Sheet1.Range("C" & RowIndex) 'A列当前单元格填充到F列对应单元格中
            NewRowIndex = NewRowIndex + 1 '填充后F列行序号+1
        End If
    Next
End Sub

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值