2011-07-15 44 views
1

首先讓我以我很新的前提來訪問vba。幾個If語句訪問2007 vba子例程。好奇,如果有另一種方式?

我的問題是我有幾個,如果在一排然後else語句例如

If Me.txtRevenuePerHour.Value < 90 Then 
    Me.chkRPH.Value = -1 
    Me.chkRPH.Enabled = "False" 
End If 

If Me.txtLoadTime.Value < 0.25 Then 
    Me.chkLT15.Value = -1 
    Me.chkLT15.Enabled = "False" 
End If 

我想知道是否有除了if語句一遍又一遍重寫另一種方式。如果沒有,那麼我會接受,但只是好奇,如果有另一種方式。

if語句檢查複選框控件是否符合某些條件。大多是在不同的條件,但有些是相同的

謝謝你的時間提前

回答

1

代碼爲每個如果使用完全不同的對象和條件If子句中和If塊內不同的對象使用。

有沒有辦法來概括If本身,認爲If的主體可以是:

未經測試的代碼:

Sub DisableAndSetToMinusOne(ctrl As Control) 
    ctrl.Value = -1 
    ctrl.Enabled = "False" 
End Sub 


If Me.txtRevenuePerHour.Value < 90 Then 
    DisableAndSetToMinusOne(Me.chkRPH) 
End If 

If Me.txtLoadTime.Value < 0.25 Then 
    DisableAndSetToMinusOne(Me.chkLT15) 
End If 
+0

我想,你給我的代碼,並在炸燬sub –

+0

它的首行突出顯示了(Control ctrl)區域,所以我認爲它與 –

+0

@Max同性戀 - 道歉,我的C#污染了代碼...嘗試我編輯的代碼。 – Oded