2016-01-20 69 views
0

我有一個索引字段,如果重複條目是試圖在窗體上,我想給用戶導航到原始記錄的選項。我試了下面的代碼,改編自一個類似問題的答案,我發現here用連字符引用字段的正確語法是什麼?

以我的情況下,[BOL]字段是可包含多個連字符的文本字段。我需要爲Me.BOL使用什麼語法?舉個例子,當我試圖進入「CT-J17-XUSH-T001」到我BOL場,我得到了錯誤:運行時錯誤「3070」:Microsoft Access數據庫引擎無法識別「CT」爲有效字段名稱或表達式。

Private Sub BOL_BeforeUpdate(Cancel As Integer) 


'https://stackoverflow.com/questions/14608052/prevent-duplicate-records-query-before-creating-new-records 

Set rst = Me.RecordsetClone 
rst.FindFirst "[ShipmentNumber] <> " & Me.ShipmentNumber & " AND [BOL] = " & Me.BOL 
If Not rst.NoMatch Then 
    Cancel = True 
    If MsgBox("BOL already exists; goto existing record?", vbYesNo) = vbYes Then 
     Me.Undo 
     DoCmd.SearchForRecord , , acFirst, "[ShipmentNumber] = " & rst("ShipmentNumber") 
    End If 
End If 
rst.Close 

End Sub 

回答

1

添加單引號括起來的文本字段值:

rst.FindFirst "[ShipmentNumber] <> " & Me.ShipmentNumber & " AND [BOL] = '" & Me.BOL & "'" 
+0

完美,非常感謝! –

相關問題