简体   繁体   English

访问VB代码不起作用

[英]Access VB Code not working

This is where it didn't compile: 这是没有编译的地方:

            DoCmd.RunSQL "UPDATE InspEvent " & _
                 "SET InspEvent.SpecsLoaded = lngRecordsAdded " & _
                 "WHERE InspEvent.EventId = [Forms]![frmInspEvent]![txtEventId];"

Looking at your original code you have lngRecordsAdded defined in your code module. 查看原始代码,您在代码模块中定义了lngRecordsAdded

One update would be: 一种更新是:

DoCmd.RunSQL "UPDATE InspEvent " & _
             "SET InspEvent.SpecsLoaded = " & lngRecordsAdded & _
             " WHERE InspEvent.EventId = " & [Forms]![frmInspEvent]![txtEventId]  

Edit: 编辑:
Another way would be: 另一种方法是:

Dim qdf As DAO.QueryDef
Set qdf = CurrentDb.QueryDefs("", "PARAMETERS RecordsAdded LONG, Event_Identifier LONG; " & _
    "UPDATE InspEvent SET SpecsLoaded=RecordsAdded " & _
    "WHERE EventID = Event_Identifier")
With qdf
    .Parameters("RecordsAdded") = lngRecordsAdded
    .Parameters("Event_Identifier") = [Forms]![frmInspEvent]![txtEventId]
    .Execute
End With  

Edit 2: 编辑2:
Looking through your original code you also have code blocks like: 查看原始代码,您还会看到以下代码块:

If IsNull(DLookup("Vendor", "PurchaseOrder", strFilter)) Then
    strVendor = "None"
Else
    strVendor = DLookup("Vendor", "PurchaseOrder", strFilter)
End If  

This could be shortened to the single line: 这可以简化为单行:

strVendor = Nz(DLookup("Vendor", "PurchaseOrder", strFilter), "None")

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM