2016-06-03 4 views
0

У меня есть вложенная коллекция, и я хотел бы иметь возможность прокручивать родительскую коллекцию, добавляя каждую дочернюю коллекцию динамически. Пожалуйста, обратитесь к приведенному ниже примеру:Динамически добавлять к первой коллекции во вложенной коллекции VBA

Dim parent, child1, child2, child3 as New Collection 
parent.add child1 
parent.add child2 
parent.add child3 

for i = 1 to parent.count 
    parent(i).Add "This is data in each child collection" 
next i 

Это можно сделать? Вышеприведенный код возвращает ошибку, указывающую, что объект требуется. В моем проекте родительская коллекция содержит около 20 различных дочерних коллекций, все из которых будут разных размеров. Я бы предпочел, чтобы не приходилось вручную записывать коды добавления для каждого ребенка. Любые советы о том, как двигаться вперед, будут очень полезны!

ответ

1

, чтобы избавиться от ошибок, типа:

Dim parent As New Collection, child1 As New Collection, child2 As New Collection, child3 As New Collection 

, поскольку каждая переменная должна быть объявлена ​​явно в противном случае это предполагается в Variant типа и Variant переменная не имеет никакого Add метод

+0

Спасибо ! Разочарование того, что вы не можете сделать несколько за один раз, и вам нужно объявить каждый из –

+0

, пожалуйста. это немного расстраивает, но в сочетании с использованием «Option Explicit» дает вам гораздо больше контроля над вашим кодом и сокращает время отладки и поддержания времени – user3598756

Смежные вопросы