ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Why vbscript examples do not work? (https://www.excelbanter.com/excel-programming/432065-why-vbscript-examples-do-not-work.html)

joeu2004

Why vbscript examples do not work?
 
The function below works as intended.

However, I get a syntax error when I try to replace "Set re =
CreateObject..." with

Set re = New regexp

and when I try to eschew the Set statement altogether and replace "Dim re"
with

Dim re as New regexp

The syntax error is "user-defined type not define".

Both erroneous forms appear in the examples at
http://msdn.microsoft.com/en-us/library/ms974570.aspx .

Why don't the examples?

I suspect I need to attach a reference (Tools References). If so, which
reference?

Alternatively, are the examples written for an incompatible revision of
Excel/VB? If so, which one?

I am using Excel 2003 with VB 6.3 as part of Office 2003 and Win XP SP3.

Is the function, as written below, compatible with the VB with Excel 2007?


The function....


Function extractNumber(s As String, n As Integer)
Dim re, nums
extractNumber = ""
Set re = CreateObject("vbscript.regexp")
re.Global = True
re.Pattern = "\d+"
Set nums = re.Execute(s)
If nums.Count = n Then extractNumber = --nums.Item(n - 1)
End Function


arjen van...

Why vbscript examples do not work?
 
If using VB Script regular expressions, you need to add a reference as follows:
Tools References Microsoft VB Script Regular Expressions

joeu2004

Why vbscript examples do not work?
 
"arjen van..." wrote:
If using VB Script regular expressions, you need to add a reference as
follows:
Tools References Microsoft VB Script Regular Expressions


Klunk! I went looking for exactly that, but overlooked it ... until you
mentioned it. Thanks.

And now I do see this statement on the web page
http://msdn.microsoft.com/en-us/library/ms974570.aspx :

"To run this code, you can [...] copy it to VB (need to add references to
Microsoft VBScript Regular Expressions)". Double klunk!




All times are GMT +1. The time now is 09:07 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com