2015-08-15 75 views
1

我最初使用Application.Inputbox接受工作正常的用戶輸入。但是當我想增加選項時,它超過了254個字符的限制。因此不得不使用userform。我是用戶形式的新手。 我使用用戶輸入來選擇案例陳述。 用戶表單基本上包含一個組合框(CmbType),一個附加的標籤和commandbutton(ok)。它看起來很好,並在屬性中添加了RowSource屬性。執行時可以看到所有選項。 用戶窗體完整代碼:在使用模塊中的用戶表單時遇到問題

Sub ok_Click() 
Type = CmbType.Value 
Unload UserForm1 
End Sub 

模塊代碼:

Sub Ingredients() 
Dim statements 
UserForm1.Show 
Select Case Type 
Case Is= 「Fruits」 
…. 
Case Is =」Vegetables」 
… 
End Select 
Unload UserForm1 
….. 
….. 

我收到用戶窗體,但它不打烊,基本上不會去的情況下statements.One更多的幫助,我需要的是創造一個數字用於像1-Fruits,2-Vegetables等情況說明中。

回答

0

看起來你正在處理可變範圍。

創建一個名爲globals的模塊。在該模塊聲明

Public iType as integer 

您可以從項目的任何位置訪問它。 請勿使用變量名稱類型。這是一個保留字。

在形式確定按鈕點擊使用

iType = CmbType.Value 
Unload me 

在模塊使用

UserForm1.Show 
Select Case iType 
Case 1 
    'Fruits 
Case 2 
    'Vegetables 
Case Else 
    'Not sure what this food is 
End Select 

下面是case語句如何使用更多的信息。 http://www.techonthenet.com/excel/formulas/case.php

另外,請查看「Option Explicit」。在每個表單和模塊的頂部添加它,可以讓你知道你正在嘗試使用的變量之類的問題,這些問題不在範圍之內。

相關問題