且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

替换多个单元格

更新时间:2023-02-19 13:58:50

尝试这个:

Option Explicit

Global ReplaceText(8, 2) As String ' <~ set up a global array of strings and replacements

'build out all of our global constants here
Sub MyVariables()
    ReplaceText(1, 1) = "Invoice EMEA Payment"
    ReplaceText(1, 2) = "Invoice"
    ReplaceText(2, 1) = "Invoice No EMEA Payment"
    ReplaceText(2, 2) = "Invoice"
    ReplaceText(3, 1) = "Invoice USA Payment"
    ReplaceText(3, 2) = "Invoice"
    ReplaceText(4, 1) = "Invoice USA No Payment"
    ReplaceText(4, 2) = "Invoice"
    ReplaceText(5, 1) = "Invoice1 Lite EMEA Payment"
    ReplaceText(5, 2) = "Invoice1 Lite"
    ReplaceText(6, 1) = "Invoice1 Lite EMEA No Payment"
    ReplaceText(6, 2) = "Invoice1 Lite"
    ReplaceText(7, 1) = "Invoice1 Lite USA Payment"
    ReplaceText(7, 2) = "Invoice1 Lite"
    ReplaceText(8, 1) = "Invoice1 Lite USA No Payment"
    ReplaceText(8, 2) = "Invoice1 Lite"
End Sub

'implement the find and replace
Sub FindAndReplace()

Dim Idx As Long
Dim MySheet As Worksheet

Call MyVariables ' <~ call the MyVariables sub and boom, you've got the ReplaceText array

Set MySheet = ThisWorkbook.ActiveSheet
With MySheet
    For Idx = 1 To UBound(ReplaceText)
        .Cells.Replace What:=ReplaceText(Idx, 1), _
            Replacement:=ReplaceText(Idx, 2), LookAt:=xlWhole
    Next Idx
End With

End Sub

现在你已经有一个方便的 MyVariables sub,您可以存储任何和所有全局变量。

Now that you've got a handy MyVariables sub, you can store any and all global variables there.