的錯誤信息是明確的:這是一個只能在設計視圖中設置屬性。
所以你必須切換視圖,設置屬性,切換回來。
我會把它放到一個標準模塊中,而不是放到表單模塊中。
Private Sub SwitchView_Click()
Call SwitchDefaultView(Me)
End Sub
' in standard module
Public Sub SwitchDefaultView(frm As Form)
Dim sFrm As String
' Make sure the current record is (and can be) saved
On Error Resume Next
frm.Dirty = False
If Err.Number <> 0 Then MsgBox Err.Description: Exit Sub
On Error GoTo 0
sFrm = frm.Name
' Switch to Design view
DoCmd.OpenForm sFrm, acDesign
Forms(sFrm).DefaultView = 1 ' Continuous form
' DoCmd.Save acForm, sFrm ' optional
' Switch back to Form view
DoCmd.OpenForm sFrm, acNormal
End Sub
雖然我想知道:通常一個表單是爲連續或單一形式設計的。我很難想象這個開關的用例。
我終於明白,沒有這種方式可以直接從單一形式轉換爲連續形式。但是你提供了一個很好的解決方法。 –