I have a multiselect listbox on my Userform. That is, the property of this listbox is set to multi and the liststyle is set to Option. The purpose is to be able to select multiple rows from this listbox so I can delete the records selected from the worksheet. For example, the listbox shows records 1, 2 and 3 from sheet1. If, in the listbox I select items 1, 2 and 3 to be deleted, I have a loop to check which items were selected from the listbox and call a routine to delete the record on the worksheet. Actually, I have two loops. The first is to loop thru which item(s) were selected in the listbox, then another loop to find the matching record(s) in the worksheet. Here's the problem: When I delete the first matching record from the worksheet, the listbox items that were selected is now cleared. Therefore, only the first item that was selected is deleted. The second and third items that were selected is now cleared from the listbox. Is there another way to do this?