我有3「頂層」的頁面(使用多頁的功能),然後加入4-嵌套頁的每個內的頂層頁的2的單個用戶窗體。見下面的示例圖片。我在編程上引用嵌套頁面時遇到困難。EXCEL VBA:在用戶窗體選擇特定頁面時MultiPages嵌套
Screenshot of Nested Multipage Userform
在這個例子中,頁面標題和名字是相同的。因此,帶有Page4標題的頁面也被命名爲Page4。我發現,應該返回頁面索引時,頁面名稱傳遞給它別人的代碼在線:
===
功能fMpIndex(BYVAL頁面名稱作爲字符串)
Dim PageCounter As Long
With MultiPage1
For PageCounter = 0 To .Pages.Count - 1
If .Pages(PageCounter).Name = PageName Then fMpIndex = PageCounter: Exit Function
Next PageCounter
End With
fMpIndex = -1
結束功能
===
也能正常工作的頂級頁,但是,當我嘗試類似:
MSGBOX(「這頁的索引爲」 & fMpIndex(「第5頁」))
任何嵌套頁(在該例子中,4 & 5兩個頁面),則此方法返回的值-1 ,表明該頁面不存在,但顯然它確實存在。這是範圍問題嗎?上面的代碼是否只搜索頂層頁面而不是嵌套頁面?
什麼是按名稱或標題或兩者以編程方式引用特定頁面的最安全,最可靠的方法是什麼?我相信它會是這樣的:
這userform.which頁strip.which page.name(「第5頁」)
在這個例子中,我只有1個窗體,但我想知道:如果什麼我有2個用戶表單?而且,在上面的例子中,我已經假定必須指定哪兩頁被引用......這是我現在的一個假設,可能不是必需的。
理想情況下,我想在窗體的方式來使用的絕對引用的每一頁,無論它是一個頂級頁或嵌套頁。如果確實如上述規範那樣,有人可以提供示例代碼嗎?
謝謝
丹