2015-06-08 3 views
1

Вопрос: У меня есть форма, которую я создал в Excel (режим разработчика). У формы есть элемент управления MutliPage. Я могу добавить динамически добавить новую страницу в многостраничный элемент управления с помощью VBA. Я понятия не имею, как добавить любую информацию на этой странице, что я только что создали - например, добавив новый флажок, этикетки и т.д.VBA Excel Динамическое создание формы

Единственный код у меня есть на данный момент:

DataQueryForm.DimensionTabs.Pages.Add "MyName", "My Caption" 
Dim currentPage As Page 
Set currentPage = DataQueryForm.DimensionTabs.Pages(0) 'this line fails 

Как вы можете видеть, что я даже не знаю, как перенести первую страницу в переменную типа страницы - так что трудно понять, с чего начать.

Любые указатели в том, как добавить новые флажки на страницу, будут наиболее ценными. Я действительно изо всех сил пытаюсь найти приличную документацию по этому поводу, действительно, что-то на этом этапе было бы полезно.

Благодаря

ответ

2

Вы должны указать MSForms.Page так что вы не получаете несоответствие типов (Excel также имеет Page объект), и вы можете установить переменную как добавить страницу:

Dim currentPage As MSForms.Page 
Set currentPage = DataQueryForm.Dimensiontabs.Pages.Add("MyName", "My Caption") 
+0

Да , благодаря! А потом у меня есть доступ к методу Controls.Add. currentPage.Controls.Add ("Forms.CheckBox.1", "cmd1") – Agent96

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