Убедитесь, что в ListBox сделан выбор, в противном случае значение Listindex = -1
.
При удалении строк работают снизу вверх
Не использовать .select
Хотите обновить ListBox после нажатия?
Слегка скорректированный код (не полностью определенные диапазоны / ячейки):
Private Sub CmdDelete_Click()
Dim i As Long
If ListBox1.ListIndex = -1 Then Exit Sub
For i = Range("A1000000").End(xlUp).Row To 1 Step -1
If Cells(i, 1) = ListBox1.List(ListBox1.ListIndex, 0) Then
Rows(i).Delete
End If
Next i
End Sub