我有一个装满产品的手提袋-手提袋有条形码标签(表格上的字段1),手提袋中的每个项目都有条形码。我需要扫描手提袋条形码一次,然后扫描项目(表格上的字段2),直到扫描完最后一个项目。然后按一个键结束该手提袋输入并移至另一个手提袋。这可能吗?我需要在数据表中换行,并在扫描的每个项目旁边加上手提袋条形码标签。
我已经弄清楚了其中的一部分-我可以成功地将数据流到工作表并维护字段1-但是我无法将焦点设置为field2-在我输入字段2并按Enter时,我将其带到字段1,当我再次按下Enter键时,它将带我回到字段2-我需要消除第二个Enter才能返回字段2
Private Sub Field1_AfterUpdate()
If Not IsNull(Me.Field1.Value) Then
Field1.DefaultValue = Me.Field1.Value
DoCmd.CancelEvent
Me.Field2.SetFocus
End If
End Sub
Private Sub Field2_AfterUpdate()
DoCmd.CancelEvent
End Sub
Private Sub Form_Load()
On Error GoTo NewRecord_Err
On Error Resume Next
DoCmd.GoToRecord , """", acNewRec
NewRecord_Exit:
Exit Sub
NewRecord_Err:
Beep
MsgBox Error$
Resume NewRecord_Exit
End Sub
答案 0 :(得分:0)
我认为您应该使用主数据表格进行调查。您可以在主表单中拥有手提包信息,而在明细表单(也称为子表单)中拥有商品信息。
您至少需要两个表。一张表用于Tote数据,另一张表用于Item数据。您还需要在一个公共字段上创建两个表之间的关系,例如ToteId
您的表结构可能看起来像这样:
tblTotes
- ToteId (Autonumber)
- ToteBarcode (Text)
tblToteItems
- ItemId (AutoNumber)
- ToteId (Number) --this has a relationship with the ToteId field in the tblTotes
- Itembarcode (Text)
您的主表单将以tblTotes
作为记录源。并且您的子表单将具有tblToteItems
表。您可以在ToteId
字段上将子表单链接到主表单。