Something like this is what I was envisioning and there is probably a better way to achieve, but using two local access tables for the View (so we can maniuplate the data) and for the excel spreadsheet (Imported into a table)
Pseudocode
Code:
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("Select user, item from localtable")
If Not (rs.EOF And rs.BOF) Then
rs.MoveFirst
Do Until rs.EOF = True
user = rs!User
item = rs!Item
recordcount = DCount("QTY", "LocalTable", "Item = " & item)
Update spreadsheettable
Set InventoryQTY = recordcount
Where item = & item
And user = user
Update localtable
Set QTY = QTY - recordcount
Loop
Else
'Do Nothing bc we don't care
End If
MsgBox "All records processed"
rs.Close
Set rs = Nothing