用于测试 VBA 中的一个或多个空格以在 Excel 单元格中查找匹配项的表达式

发布于 2024-12-09 17:04:36 字数 484 浏览 0 评论 0原文

我正在尝试在 Excel 文档的宏中使用正则表达式。

这是我到目前为止所得到的:

dim regex
regex.pattern = "\s+"
for p = 3 to totalparamcount
    if (regex.test(Worksheets("table").Cells(p,1)) then
        msgbox ("blah blah")
    end if
next

我试图匹配的模式是一个或多个空格、制表符、换行符,我看到它们由 "\s" 表示。

行 'if (regex.test(Worksheets("table").Cells(p,1)) then' 出现此错误:

Run-time error '424':

Object required

我在 Excel 中使用 VBA 7.0。

I am trying to use regular expressions in a macro for an Excel document.

Here is what I have so far:

dim regex
regex.pattern = "\s+"
for p = 3 to totalparamcount
    if (regex.test(Worksheets("table").Cells(p,1)) then
        msgbox ("blah blah")
    end if
next

The pattern I am trying to match is one or more spaces, tabs, newlines, which I saw is denoted by "\s".

The line 'if (regex.test(Worksheets("table").Cells(p,1)) then' is getting this error:

Run-time error '424':

Object required

I am using VBA 7.0 in Excel.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

三寸金莲 2024-12-16 17:04:36

您需要创建正则表达式对象,即

Dim regex
Set regex = CreateObject("vbscript.regexp")
regex.Pattern = "\s+"

You need to create the regexp object, ie

Dim regex
Set regex = CreateObject("vbscript.regexp")
regex.Pattern = "\s+"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文