Home |
Search |
Today's Posts |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Function elementExists(myCollection As Collection, myName As String) As
Boolean Dim vArr as Variant On Error Resume Next vArr = TypeName(myCollection(myName)) elementExists = (VarType(vArr) < vbEmpty) End Function works with both and doesn't use the undocumented VarPtr. -- Regards, Tom Ogilvy "keepITcool" wrote in message ft.com... use the VarPtr method in my example. afaik that works in all cases. -- keepITcool | www.XLsupport.com | keepITcool chello nl | amsterdam Tom Ogilvy wrote : OK, here is a better example: Sub ABCD() Dim myCollection As New Collection Dim vArr(1 To 10) As String Dim sStr As String, sSTr1 As String For i = 1 To 10 sStr = "" sSTr1 = "" For j = 1 To 4 sStr = sStr & Chr(Int(Rnd() * 26 + 65)) sSTr1 = sSTr1 & Chr(Int(Rnd() * 26 + 65)) Next myCollection.Add sStr, sStr If Rnd() < 0.5 Then vArr(i) = sStr Else vArr(i) = sSTr1 End If Next For i = 1 To 10 Debug.Print i, vArr(i), elementExists(myCollection, vArr(i)) Next End Sub Function elementExists(myCollection As Collection, myName As String) As Boolean On Error Resume Next elementExists = (myName = myCollection(myName)) End Function of course this doesn't do objects, but string seemed to be the type anyway. |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Equation Efficiency? | Excel Worksheet Functions | |||
Range efficiency | Excel Worksheet Functions | |||
Runtime error with the sheet collection, which was not there in 20 | Excel Programming | |||
VB Efficiency: Inserting a Row | Excel Programming | |||
.select efficiency | Excel Programming |