我有一個報告列出了存款,並將存款ID設置爲超鏈接。 OnClick存款ID,它打開存款條目表格到那個特定的記錄。但是,表單會打開一個新記錄,而不是用戶點擊的記錄。我認爲這是因爲我有另一個運行OnLoad的代碼來執行新的記錄,並且它可能在執行OnClick代碼後執行。訪問VBA - 從報表打開窗體到特定記錄
DepositID從報告的OnClick:
DoCmd.OpenForm "DepositForm", acNormal, "", "[DepositID]= " & [DepositID]
的OnLoad形式:
DoCmd.GoToRecord , , acNewRec
是的OnClick代碼運行後在onload代碼,並有效地不顯示從報表中指定的記錄?不知道如何解決。
有一種快速簡單的方法來檢查打印調試的功能!你是否試過在每個事件處理程序中放置一個'Debug.Print「Here或'MsgBox」Here?給他們不同的信息,你將能夠看到哪些信號按什麼順序觸發。如果在OnClick之後觸發OnLoad,您將能夠看到它。 – Mikegrann
絕對的,表單打開的順序是「Open> Load> Resize> Activate> Current」。您可以移除OpenForm調用的Criteria部分,只需將'DepositID'移動到該語句的末尾(作爲打開的參數)。然後簡單地檢查打開參數的「打開」 - 如果沒有出現新記錄。 –