Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 176
Default Nesting Collections

Does this work for you?
It works for me (XL97/WIN98)

Class Module clsSample:
Public Name As String
Public SampleType As String
Public Elements As Collection

Sub Main()
'Dim Sample As Sample ' you should be shot!
Dim Sample As clsSample, Samples As Collection
Dim zFile, i1%, s1$

Set Samples = New Collection

For Each zFile In Array("One", "Two")
Debug.Print "--Building " & zFile
Set Sample = New clsSample
Sample.Name = (zFile & "Name")
Set Sample.Elements = New Collection
Sample.Elements.Add "Alpha", "AlphaKey"
Sample.Elements.Add "Beta", "BetaKey"
Debug.Print Sample.Elements("AlphaKey")
Debug.Print Sample.Elements("BetaKey")
Samples.Add Sample ' without a key
s1 = Samples(1).Name ' by index, ok
's1 = Samples(s1).Name ' by key, ng
Next zFile

For Each Sample In Samples
Debug.Print "--" & Sample.Name
Debug.Print Sample.Elements.Count
Debug.Print Sample.Elements("AlphaKey")
Debug.Print Sample.Elements("BetaKey")
Debug.Print Sample.Elements(1)
Debug.Print Sample.Elements(2)
Next Sample
End Sub ' D-C Dave

wrote:
I keep coming across situations where it would be really useful to
create collections within collections, but I just can't quite work it
out. Here's the closest I've gotten: I have a class module called
Sample, with the following public variables (among others):
Name as string
SampleType as string
Elements as collection

in my main sub:

dim Sample as Sample
dim Samples as collection

set Samples = new collection

for each File in application.filesearch.foundfiles
set Sample = new sample
set Sample.Elements = new collection
Sample.Name = (somevalue)
for i = 1 to 10
Sample.Elements.add (somevalue, somekey & i)
next i
debug.print sample.elements(somekey) 'OK so far
samples.add Sample '(with Sample.Name as key)
Next File

For each Sample in Samples
debug.print Sample.Name 'Works
debug.print sample.elements.count 'Works
debug.print Sample.Elements(somekey1)
'Gives Error '424' Object Required
debug.print Sample.elements(1) 'gives error also
Next Sample

Anyone out there know the proper way to nest collections or an elegant
alternate? Thanks! -Lisa



----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Enumerations or Collections PaxtonRoadEnd Excel Programming 1 October 5th 07 05:51 PM
For Each and Collections Memento Excel Programming 6 June 4th 07 02:57 PM
Collections of Collections David Morton Excel Programming 6 November 13th 04 01:10 AM
Help with collections ksnapp[_45_] Excel Programming 1 April 7th 04 12:42 AM
Using Collections Kerry[_4_] Excel Programming 1 January 25th 04 04:08 PM


All times are GMT +1. The time now is 06:17 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"