I try this code is working !, but only for first delete action.

For example I have 4 rows in the grid. I remove the 2nd row. It's working. And next I try to remove the row number 1 in grid, The grid1 didn't removing row that I selected in the grid.

here the code :

Code:
    For i = cIRowCount1 To 1 Step -1
        With Grid1
            cIRowCount1 = cIRowCount1 - 1    ' --> I think this is more confusing me !!!!!!
            If .Rows = 2 Then .Rows = .Rows + 1
            If .TextMatrix(i, 6) = Text1.Text Then  'selected match column in grid1 base on grid
                '.RowSel = i
                .RemoveItem (i)
            End If
        End With
    Next i
After the row in grid1 is removed, I need to re-count the total rows in grid1 for the next action and place the selected row in the last row in grid1. I can't imagine how to do that ??