1
場景:我正在爲訪問數據庫創建高級搜索表單。他們已經有了單一的搜索表單來運行訪問查詢並在查詢窗口中打開。MS-Access在查詢窗口中打開VB構建的查詢
問題:我想模仿此功能,但我期待在代碼中創建查詢作爲字符串,然後在查詢窗口中打開它。這可能嗎?我搜索谷歌,但沒有找到任何東西。如果它不可能有任何替代品?
在此先感謝。
場景:我正在爲訪問數據庫創建高級搜索表單。他們已經有了單一的搜索表單來運行訪問查詢並在查詢窗口中打開。MS-Access在查詢窗口中打開VB構建的查詢
問題:我想模仿此功能,但我期待在代碼中創建查詢作爲字符串,然後在查詢窗口中打開它。這可能嗎?我搜索谷歌,但沒有找到任何東西。如果它不可能有任何替代品?
在此先感謝。
您可以打開它看起來像一個查詢窗口數據表視圖形式,但你需要創建一個表單控件添加到它,然後將記錄來源
例如
Dim rst As DAO.Recordset
Dim rsField As DAO.Field
Dim control As Access.TextBox
Dim frm As Form
Set frm = CreateForm()
frm.Visible = False
Dim sql As String
sql = "Select * from MSysObjects"
Set rst = CurrentDb.OpenRecordset(sql)
For Each rsField In rst.Fields
Debug.Print rsField.Name
Set control = CreateControl(frm.Name, acTextBox, acDetail)
With control
.Width = 100
.Height = 100
.Top = 100
.Left = 100
.ControlSource = rsField.Name
.Name = rsField.Name
End With
Next rsField
Set rst = Nothing
frm.Visible = True
frm.RecordSource = sql
DoCmd.OpenForm frm.Name, acFormDS
這有幾個問題。
誠實地修改一個querydef可能是一個比較簡單的方法。
查詢數據表是一個血腥的糟糕的用戶界面。你爲什麼會選擇比這更好的東西? –
@ David-W-Fenton,我從其他3個已經創建的搜索頁面(不是我的設計)複製UI。這只是一個高級搜索頁面,可以將其他3個選項相結合,再加上一些額外的選項。 – Gage
那麼,你繼續使用糟糕的用戶界面,因爲糟糕的用戶界面已經到位了?這聽起來像是一個很好的長期戰略嗎? –