Я пытаюсь создать код для представления документа формы с помощью VBA в Word 2007. Я создал классы для представления раздела, набора вопросов и вопросов.
Итак, у меня 15 разделов. Я создал функцию для создания каждого объекта «Раздел», добавив его в коллекцию «Разделы», затем уничтожил объект, в результате чего объекты остались постоянными в коллекции (или в чем-то еще).
Можно ли использовать тот же метод добавления коллекций в коллекции, или мне придется определять каждую коллекцию явно?
Код в модуле:
Public Sections As Collection
Function DefineSection(ByVal SectionName As String)
Set Section = New clsSection
Section.myName = SectionName
Sections.Add Section, SectionName
End Function
Function DefineQuestionSet(ByVal SectionName As String, ByVal Name As String, ByVal NoOfQuestions As Integer, ByVal IsMutuallyExclusive As Boolean, Optional ByVal DependentOnSection As String)
Dim Qsets As Collection
Set Qsets = New Collection
Set QuestionSet = New clsQuestionSet
QuestionSet.Name = Name
QuestionSet.NoOfQuestions = NoOfQuestions
QuestionSet.MutuallyExclusive = IsMutuallyExclusive
If Not (DependentOnSection) = "" Then
QuestionSet.DependentOnSection = DependentOnSection
End If
Qsets.Add QuestionSet
Sections.Item(SectionName).Add Qsets
End Function
Затем это вызывается через:
Sub Initilise()
Set Sections = New Collection
DefineSection "PersonalDetails"
DefineQuestionSet "PersonalDetails", "PersonalDetails", 29, False
End Sub