0
這個SELECT CASE
的情況正在爲我工作,但我認爲代碼可以更友好...任何建議都會非常有幫助。指導,VBA - SELECT CASE清理
Select Case True 'select case where worker name and action is true then in each case RSworkhours.addnew
Case Me.Worker1.Value <> "" And Me.fw1a1 = 1
With RsWorkHours
.AddNew
!WorkerID = Me.Worker1
!Date = Me.TxtDate
!StandardTime = Me.w1a1s
!Overtime = Me.w1a1o
!Doubletime = Me.w1a1d
!ScaffoldID = Me.cboScaffnum
.Update
End With
Me.fw1a1 = 0
GoTo WorkerHours
Case Me.Worker1.Value <> "" And Me.fw1a2 = 1
With RsWorkHours
.AddNew
!WorkerID = Me.Worker1
!Date = Me.TxtDate
!StandardTime = Me.w1a2s
!Overtime = Me.w1a2o
!Doubletime = Me.w1a2d
!ScaffoldID = Me.cboScaffnum
.Update
End With
Me.fw1a2 = 0
GoTo WorkerHours
通過這個Select Case
80倍的代碼循環,如果有16名工人,每個有5個動作。
我想也許有一個循環,像修改參數中的數字:
for each x to 16
for each y to 5
If Me.worker & x & .Value <> "" And Me.fw & x & a & y Then
With Recordset
.AddNew
'insert stuff
.Update
End With
End If
Next y
Next x
有沒有人有任何見解? 預先感謝您。
您確定這是您用例的最佳UI嗎? – Tomalak
繼@Tomalak說過的話,如果「工人1」有第六次行動會發生什麼? – FreeMan
在這種情況下,是的,這只是設計視圖中窗體的一半......這是每個組合框的一個'_Click'事件,它根據需要擴展窗體,並且此窗體僅適用於一組將僅限於在一天中最多有5個動作.... 這就是說,我總是在如何精簡我的表格和程序的建議。 –