0

この方法で検索して置換する方法があるかどうか知りたいです:

数値が続くすべてのセルを検索する必要がありますapt。しかし、その数は常に異なります。それで、それを行うスクリプトまたは何かがありますか?

探す :apt XX (the 2 Xs representing the numbers)

置換:app 30

したがって、すべての場所を特定しますapt + a number

何千もの行があり、やりたくないからです:

検索: apt 01...

検索: apt 02...

検索: apt 03...

等々

ありがとうございました!

4

3 に答える 3

2

探しているものは次のとおりです。

Sub findApt()
    Dim count As Integer
    count = Application.WorksheetFunction.CountA(Range("B:B"))
    Dim i As Integer
    i = 1
    Do While i <= count
        If (InStr(Range("B" & i), "apt")) Then
            Range("B" & i) = Mid(Range("B" & i), 1, Application.WorksheetFunction.Search("apt", Range("B" & i)) - 1) & "app 30"
        End If
        i = i + 1
    Loop
End Sub

これは、データが列 B にあることを前提としています。

于 2012-08-03T19:48:25.087 に答える
1

正規表現は確かに便利ですが、組み込みの「正規表現」で十分だと思います。ヘルプ ファイルから:

アスタリスクを使用して、任意の文字列を検索します。たとえば、s*d は "sad" と "started" を検索します。

疑問符を使用して任意の 1 文字を検索します。たとえば、s?t は "sat" と "set" を検索します。

したがって、あなたの場合は Ctrl+H を押して検索と置換ダイアログをapt *表示し、検索ボックスとapp 30置換ボックスに書き込みます。

aptPS:あなたの質問からは、数値以外の何かが続くセルがいくつかあり、それを保持する必要があるかどうかは明確ではありません。この場合は、Emmanuel が示唆するように、またはScripting.RegexVBA で使用して、RegEx を使用してください。

于 2012-08-03T20:17:14.397 に答える
0

Find And Replace Excel Regexをインストールすることをお勧めします。正規表現を使用して検索および置換できます。

于 2012-08-03T19:47:06.363 に答える