我遇到了調整後的代碼位循環遍歷記錄在我的子窗體中的問題。當子窗體加載時,它遍歷當前過濾的記錄,根據其狀態在另一個表(tDPARSHEET)中的狀態調整字段6。然而IM無法得到它,當我把它的工作從我的刷新按鈕在主窗體上Recordsetclone不能在子窗體上工作
With Me.RecordsetClone
If Not (.BOF And .EOF) Then
.MoveFirst
While Not .EOF
Debug.Print .Fields(6).Name, .Fields(6).Value
If .Fields(6).Value <> DLookup("OverallStatus", "tDPARSHEET", "[LocalPartNumber]='" & .Fields(3).Value & "' AND [LocalRevision]='" & .Fields(4).Value & "'") Then
'Debug.Print "No Match"
.Edit
.Fields(6).Value = DLookup("OverallStatus", "tDPARSHEET", "[LocalPartNumber]='" & .Fields(3).Value & "' AND [LocalRevision]='" & .Fields(4).Value & "'")
.Update
Else
'Debug.Print "!!Match Found!!"
End If
.MoveNext
Wend
.Requery
End If
End With
我相信這個工作負載由於Me.Recordsetclone被稱爲子窗體的負載,如果我想從mainform中調用它,特別是從我用來刷新主窗體的按鈕,然後我需要直接調用它。
Forms!frmMain.frmsub.Form.recordsetclone是我所看到的語法。除了我在網絡上看到的任何其他語法[me.frmsub.form.recorsetclone // frmMain.subfrmctrlname.form.recordsetclone // me.frmMain.frmsub.forms.subfrmctrlname.recorsetclone]其中一些似乎是錯誤的,但我試過他們。我已經包含某種形式的信息,向下跌破用在語法
的MainForm:frmDPARTOP
子窗體窗體名稱:frmDPARPARTSSubform
子窗體CTL名稱:subDPARTOP
我在做什麼錯是不是讓我得到此記錄集工作,目前我有Me.subDPARTOP.Form.RecordsetClone中,我沒有收到錯誤,它只是不起作用
下面是當前的代碼後按照這裏的說明。目前代碼不5號線到達Debug.Print,據我所知,如無在即時窗口
Private Sub Command31_Click()
'Loops through Subform and updates DPAR Status from tDPARSHEET
'Main Form Name is frmDPARTOP
'Sub Form Name is frmDPARPARTSSubform
'Sub Form Control is subDPARTOP
Dim Field6 As Variant
With Me!subDPARTOP.Form.RecordsetClone
While Not .EOF
Field6 = DLookup("OverallStatus", "tDPARSHEET", "[LocalCustomer]='" & .Fields(2).Value & "' AND [LocalPartNumber]='" & .Fields(3).Value & "' AND [LocalRevision]='" & .Fields(4).Value & "'")
Debug.Print .Fields(6).Name, .Fields(6).Value, Field6
If .Fields(6).Value <> Field6 Then
Debug.Print "No Match"
.Edit
.Fields(6).Value = Field6
.Update
Else
Debug.Print "!!Match Found!!"
End If
.MoveNext
Wend
.Requery
End With
'Refreshes DPAR Counter
Me.Customer.SetFocus
Me.Dirty = True
Me.Refresh
End Sub
這隻會更新所選記錄在運行子表單時 –
我也注意到它沒有到達代碼的調試部分,因爲沒有任何內容被打印到即時窗口中 –
如果它更新了一條記錄,將會打印一條調試線。 – Gustav