Much of what you've coded appears unneccessary. (if i'm following it correctly.)
Code:
DoCmd.GoToControl "NoInFull"
lNoInFull = Screen.ActiveControl.Value
can simply be written
Code:
lNoInFull = Me.NoInFull
note that .value is the default property so it is usually not needed.
Assuming this is within the forms module you can make use of the me keyword.
Code:
lCumUndoBuffer = lCumBuffer
Forms!frmSodaTallyNorthMachines!CollectUndo.Value = lCumUndoBuffer
can be written
Code:
Me.CollectUndo = lCumBuffer
Code:
rs.FindFirst "ItemName = '" & RecoverRec & "'"
wont move to the record on the form without setting the bookmark property.