Мой лист содержит автомобили, которые находятся в определенном месте и требуют проверки. Этот список составляется два раза в день и иногда состоит из 10 строк, иногда 14, иногда 12 и c. Теперь я хотел бы вырезать половину строк и поместить их рядом с другими строками (в этом случае вставьте его в ячейку E). Я хотел бы автоматизировать этот процесс, поэтому в VBA должно быть:
- Количество строк (X)
- Обрезать строки с X / 2 до X
- Вставить данные в ячейку E1
Я нашел эту функцию, которая возвращает среднюю ячейку. Тем не менее, я хотел бы собрать это в подпункте.
Function Middle(r As Range) As Variant
Dim i As Long, j As Long
If r.Columns.Count > 1 Then
Middle = [#N/A]
Exit Function
End If
i = r.Row
j = r.Rows.Count
Middle = Cells(i + (j - 1) / 2, r.Column).Address
End Function
Sub cutting()
Range("Middle:C" & Range("A" & Rows.Count).End(xlUp).Row).Select
Selection.Cut
Range("E2").Select
ActiveSheet.Paste
Range("A1:C1").Select
Selection.Copy
Range("E1").Select
ActiveSheet.Paste
Cells.Select
Cells.EntireColumn.AutoFit
Range("E8").Select
End Sub
До
После