You can iterate a multiselect listbox using a for each statement. Creating and testing a loop can be difficult if your code fails to ever exit the loop. It is good to understand how to use breaking points and the debugger tools when creating loops that iterate.
So your code would look something like this.
Code:
'There is no need to declare and initialize the variant varItem
'Dim varItem as Variant
'varItem = ""
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("Interaction")
For Each varItem In Me.lstContol.ItemsSelected
With rst
.AddNew
.Fields("Member") = Me.lstControl.Column(0, varItem)
.Fields("Date of Interaction") = DateofInteraction.Value
.Fields("Time Spent") = TimeSpent.Value
.Fields("Interaction") = Interaction.Value
.Fields("Service") = Service.Value
.Fields("Staff") = Staff.Value
.Fields("Comment") = Comment.Value
.Update
End With
Next varItem
rst.close
set rst = Nothing
DoCmd.Close acForm, "Log Interaction", acSaveYes