2014-01-20 52 views
1

我在Access 2010中創建了一張表,其中包含一個員工姓名列表,並使用ID作爲主鍵。 我有另一張表,它通過ID在下拉框中使用這些名稱作爲外鍵,允許用戶選擇一個員工的姓名,然後使用表格將該名稱記錄到該名稱。檢查表中是否已存在Access 2010 VBA

我想問的是,如何編寫VBA代碼來檢查員工姓名是否已添加到培訓表中,從而檢查員工是否已完成培訓,然後返回消息框提醒用戶; 「這名員工已經完成了培訓,你確定要繼續嗎?」

我對VBA來說比較新,但是我認爲我需要某種對僱員ID的Count方法。提前致謝!

+2

退房使用DLookup http://office.microsoft.com/en-ie/access-help/dlookup-function-HA001228825.aspx – Fionnuala

+0

感謝,這顯示了功能,但我會如何將它放入一個語句返回一個消息框,如果計數大於1? – Chipsaird

+0

這是一個新問題,如果您需要輸入記錄的次數,則可以使用DCOUNT或記錄集。 – Fionnuala

回答

1

我想通了,謝謝你的幫助!

'Save button 

'Activated on click 

'Runs macro if that employee has not already been added to the WelfareTraining database 

Private Sub SaveRecord_Click() 

    Dim stDocName As String 

    stDocName = "SaveRecordTraining" 

    If DCount("[Employee]", "WelfareTraining", "[Employee] = " & Me![Employee] & " ") > 0 Then 
     MsgBox ("This employee has already completed their training") 
     Else 
     DoCmd.RunMacro stDocName 
    End If 

End Sub 
+0

這意味着您使用的是未綁定的表單。綁定形式的默認行爲是保存記錄。 – Fionnuala