當前我正在編寫一個excel宏。該宏顯示一個用戶窗體。 在用戶窗體中,用戶可以選擇一些東西。在用戶選擇了一些我調用Userform.Hide來隱藏用戶窗體並閱讀表單中的選擇之後。讀取選擇後,我稱之爲卸載用戶窗體。現在代碼與選擇交互。我想在循環中完成此操作,但是當代碼嘗試第二次顯示用戶窗體時。我收到了一個表單已經顯示的異常。我無法理解它,因爲我叫Unload Userform。當我在調試模式下執行它時,它應該如此工作。在ClassModule我稱之爲一個循環VBA用戶表單反覆顯示相同的用戶表單
Sub Costum(Spalte As Integer, Zeile As Integer, SpalteBeginn As Integer, Cards As Cards, CardsOpponent As Cards)
CardSelector.CardSelector_Activate Cards
Dim c As card
Dim number As Integer
number = CardSelector.SelectedNumber
Set c = Cards.CardDictionary.Items(CardSelector.SelectedNumber - 1)
SetCardAsPlaced c, Zeile, Spalte, SpalteBeginn
Unload CardSelector
End Sub
有人可以幫助我在這裏
用戶窗體代碼
Private Sub Image1_Click()
SelectCard 1
End Sub
Private Sub Image2_Click()
SelectCard 2
End Sub
Private Sub SelectCard(number As Integer)
SelectedNumber = number
Me.Hide
End Sub
Public Sub CardSelector_Activate(Cards As Cards)
Dim c As card
For Each Key In Cards.CardDictionary.Keys
Set c = Cards.CardDictionary.Items(Key - 1)
If c.value = 1 And c.played Then
Image1.Enabled = False
End If
If c.value = 2 And c.played Then
Image2.Enabled = False
End If
Next Key
number = SelectedNumber
CardSelector.Show
End Sub
碼?
我們需要查看您的代碼,以便我們知道發生了什麼。 –
我已將它添加到您編寫的問題 – Lukas
_「我調用Unload Userform」_,這意味着您要卸載的用戶窗體實際上是以「Userform」命名的? – user3598756