`
Private Sub Link_Click()
Dim OpenLink As String
Dim db As DAO.Database
Set db = CurrentDb
OpenLink = DLookup("Link", "dbo_tbl3_RankedLM")
FollowHyperlink OpenLink
End Sub
`我的 Access 資料庫有一個 SQL 鏈接表,我從中提取一個 txt 資料型別,其中存盤了一個超鏈接。我已將該鏈接列作為按鈕放入訪問表單中。所以每一行都有它自己的鏈接按鈕。
我正在使用 Dlookup 來獲取超鏈接欄位和資料庫,但鏈接不是來自相應的行,而是來自該表的隨機鏈接。我需要有關如何設定標準以確保它拉出正確鏈接的幫助。
在此處輸入影像描述
uj5u.com熱心網友回復:
DLookup有第三個引數,允許您指定條件,否則它只會回傳“隨機”記錄。嘗試類似:
OpenLink=DLookup("Link","dbo_tbl3_Ranked_LM","LinkID=" & Me!LinkID)
這假設表中有一個唯一值(通常是自動編號主鍵),允許您獲取鏈接值(否則您只會獲取匹配的第一條記錄)。您還應該檢查Null回傳的值。請注意,不需要宣告和設定對Database物件的參考,因為這不是必需的。
uj5u.com熱心網友回復:
我不知道您所說的 SQL 鏈接表是什么意思,這是我第一次在訪問中使用超鏈接,但請嘗試以下操作:
根據評論和 Applecore 的回答,在 dlookup 中添加一個 where 子句以僅獲取一個鏈接。
接下來,FollowHyperLink 需要一個字串,但您有一個鏈接,因此請使用 HyperlinkPart 方法從鏈接中獲取地址。請參閱:https ://docs.microsoft.com/en-us/office/vba/api/access.application.hyperlinkpart
注意:Dlookup 回傳一個 Variant,因此如果您可以將鏈接放在表單記錄源中,那么您可以使用類似的東西直接呼叫 HyperLinkPart
Private Sub Command8_Click()
Dim address As String
address = Application.HyperlinkPart(Me.Link, acAddress)
'Debug.Print address
FollowHyperlink address
End Sub
但是如果你必須使用 Dlookup 然后使用 Variant DataType 來傳遞鏈接:
Private Sub Command8_Click()
Dim address As String
Dim link As Variant
link = DLookup("URL", "Links", "LinkID = " & Me.LinkID)
address = Application.HyperlinkPart(link, acAddress)
FollowHyperlink address
End Sub
注意:URL 是我的鏈接表中超鏈接列的名稱。
uj5u.com熱心網友回復:
您需要在 Dlookup 中添加條件:
OpenLink = DLookup("Link", "dbo_tbl3_RankedLM", "someField = 3")
在此示例中,DLookup 將獲取名為 'someFieldd' = 3 列的行的鏈接。我建議使用唯一 ID 列作為 Dlookup 條件,以確保它檢索特定行的鏈接。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/482483.html
標籤:毫秒访问
