范围。如果另一个单元格值为:

问题描述 投票:0回答:1

我正在尝试使用基于另一个单元格值(在另一列中)的查找和替换功能。

例如:

我想做这个改变:

Columns("OEM").Replace What:="Aerostar Aircraft Corporation", _
    Replacement:="Aerostar Aircraft Corp", _
    LookAt:=xlPart, _
    SearchOrder:=xlByRows, _
    MatchCase:=False, _
    SearchFormat:=False, _
    ReplaceFormat:=False

仅当“模型”列(同一行)的值为“DW100”时。

该代码怎么写?

Columns("OEM").Replace What:="Aerostar Aircraft Corporation", _
    Replacement:="Aerostar Aircraft Corp", _
    LookAt:=xlPart, _
    SearchOrder:=xlByRows, _
    MatchCase:=False, _
    SearchFormat:=False, _
    ReplaceFormat:=False
excel vba replace find
1个回答
0
投票

请尝试一下。

Option Explicit
Sub Demo()
    Dim RngModel As Range
    Set RngModel = Application.Intersect(ActiveSheet.UsedRange, Range("Model"))
    RngModel.AutoFilter
    RngModel.AutoFilter Field:=1, Criteria1:="DW100"
    Dim RngOEM As Range
    Set RngOEM = Application.Intersect(ActiveSheet.UsedRange, Range("OEM"))
    RngOEM.Replace What:="Aerostar Aircraft Corporation", _
        Replacement:="Aerostar Aircraft Corp", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
    RngModel.AutoFilter
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.