Why vbscript examples do not work?

  • Thread starter Thread starter JoeU2004
  • Start date Start date
J

JoeU2004

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
 
If using VB Script regular expressions, you need to add a reference as follows:
Tools > References > Microsoft VB Script Regular Expressions
 
arjen van... said:
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!
 
Back
Top