Итак, я использую этот макрос для поиска по id (серийному номеру), а затем удаляю элементы строки для этой конкретной строки. Код для удаления строки:
Sub DeleteMe()
'declare the variables
Dim ID As Range, c As Range, orange As Range
Dim wb As Workbook
Set wb = ThisWorkbook
Set Fws = wb.Sheets("Data")
Set Bws = wb.Sheets("Bookings")
Dim lastrow As Long
'set the object variable
Set ID = Bws.Range("B3")
'stop screen flicker
Application.ScreenUpdating = False
lastrow = Fws.Range("A" & Rows.Count).End(xlUp).Row
Set orange = Fws.Range("A2:A" & lastrow)
'find the value in the range
For Each c In orange
If c.Value = ID.Value Then
'delete the row
c.Cells(1, 2).Clear
c.Cells(1, 3).Clear
c.Cells(1, 4).Clear
c.Cells(1, 5).Clear
c.Cells(1, 6).Clear
c.Cells(1, 7).Clear
c.Cells(1, 8).Clear
c.Cells(1, 9).Clear
c.Cells(1, 10).Clear
c.Cells(1, 11).Clear
c.Cells(1, 12).Clear
c.Cells(1, 13).Clear
c.Clear
End If
Next c
Sheet2.Select
End Sub
Я не удаляю всю строку, потому что в других столбцах есть значения, к которым я не хочу прикасаться
После запуска кода моя база данных выглядит следующим образом:
Мне нужно сдвинуть все оставшиеся строки вверх, чтобы заполнить пустую строку. Я также хочу, чтобы серийные номера менялись соответствующим образом. Так что в этом случае 7 станет 6, а 8 станет 7.
Заранее спасибо!