【问题标题】:Find and Replace in VBA在 VBA 中查找和替换
【发布时间】:2015-04-21 04:30:52
【问题描述】:

我正在尝试浏览一列部门名称(字符串),并且任何包含字符串“- INACTIVE”的内容都需要将其删除并只保留部门名称。例如,如果我有“Jacksonville - INACTIVE”,我希望它在列单元格中只是“Jacksonville”。我尝试使用 .Find 和 .Replace 方法,但我似乎没有掌握使用它们的方式。

我在朋友的帮助下尝试过,这就是我目前所拥有的。我是这种语言的新手。

 Sub DeleteRows()

    Dim c As Range
    Dim SrchRng
    Dim InactiveDepartment As String
    Dim Department As String

 Range("A1").Select

 InactiveDepartment = ActiveCell.Value

 Set SrchRng = ActiveSheet.UsedRange

 Do Until ActiveCell.Value = ""
     Set c = SrchRng.Find("INACTIVE", LookIn:=xlValues)
     If Not c Is Nothing Then
         Department = Replace(InactiveDepartment, " - INACTIVE", "")
         ActiveCell.Value = Department
         ActiveCell.Offset(1, 0).Select
    Else
         ActiveCell.Offset(1, 0).Select
    End If
Loop

End Sub

【问题讨论】:

    标签: vba excel replace


    【解决方案1】:

    为什么不对整个A 列使用Excel Replace 工作表函数?

    Range("A:A").Replace What:="- INACTIVE", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    

    【讨论】:

    • 感谢您的回复,我会试试这个。
    猜你喜欢
    • 2018-10-06
    • 2012-03-08
    • 2013-07-15
    • 1970-01-01
    • 2021-02-12
    • 1970-01-01
    • 2014-10-12
    • 2013-07-27
    相关资源
    最近更新 更多