Подстановочные знаки в строковой переменной vba - PullRequest
0 голосов
/ 16 ноября 2018

Я хотел бы знать, заменяют ли подстановочные знаки в простом VBA функцию.Итак, у меня есть строковая переменная, скажем:

str = " Lorem Ipsum 3.07 EUR Dorum"

Мне необходимо удалить эту часть "3.07 EUR".Я определенно знаю сумму, но не валюту. Код, который я пробовал, который не работал:

str1 = Replace(str, " 3.07 ???", "")

Я знаю, что это работает, когда я делаю замену в ячейке или диапазоне, поскольку у меня есть часть кода, которая делаетЭто.Есть ли разница в замене в ячейке и замене в строковой переменной, и я просто делаю это неправильно?

1 Ответ

0 голосов
/ 16 ноября 2018

Просто используйте регулярное выражение (предполагается, что вы знаете число, как вы указали):

Sub Test()
    MsgBox RemoveString(" Lorem Ipsum 3.07 EUR Dorum", "3.07")
End Sub

Function RemoveString(s$, num$)
    With CreateObject("VBScript.RegExp")
        .Pattern = num + "\s+[A-Z]{3}"
        RemoveString = .Replace(s, "")
    End With
End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...