I'm not sure I follow what you're trying to do. Normally... and especially at a beginner level, a listbox does one of two things. First, it simply displays a list of options that the user can select from. Once they make a selection, it is entered into the field the list box is associated with. This is the most common use of a list box and is used to force consistency... Example: Your list box might contain John, Mary and Joe. The user selects John which is entered into the record, preventing the user from entering Jon or johnnie.
The second and what I feel is a more powerful use of a list box is that the user can make a selection from the list box ... usually some unique field in your table(s), which will display the record associated with that selection.
And yes, there are other ways to use a list box, but that takes more indepth knowledge of Access and VBA.
So, after that long winded explanation, I'm thinking that you need to go back to the creation of your form.. or what you call your sub form. At this time, with what little information you've provided, I'm at a loss as to how ALL records are being updated via your list box.... I know it can happen, I just think you need to provide more detail. Example - a sub form is usually associated with a parent form. Is your list box on your parent form or actually in your sub form? If you have both, what are you trying to do with the list box? Make a selection or display a record?