Страницы: 1
RSS
Макрос удаляющий первые строки так, что бы по итогу получалось определённое количество строк
 
Здравствуйте. Помогите написать макрос, который бы действовал в соответствии с нижеизложенными условиями.

Если количество значений в столбце A:
<=301, то выводим сообщение "Готово",
>301, то удаляем столько первых строк (без заголовка), что бы значений в столбце A оставалось 301, выводим сообщение "Готово". Предварительно перед удалением заменив с формул на значения (копировать - вставить как значения) те 30 строк которые после удаления окажутся первыми после заголовка.
Изменено: mr667 - 29.03.2018 13:27:53
 
Прикрепил пример. Там должен выполнятся второй сценарий - на выходе 301 значение в столбце A.
Изменено: mr667 - 29.03.2018 13:29:47
 
mr667,
Код
Sub Mr()
Dim n&
  n = WorksheetFunction.CountA(Columns(1))
  If n > 301 Then
    With ActiveSheet.UsedRange.Rows(n - 299).Resize(30)
      .Value = .Value
    End With
    Rows(2).Resize(n - 301).Delete
  End If
  MsgBox "Готово"
End Sub
Изменено: Казанский - 30.03.2018 14:25:41
 
Казанский, ух ты как лаконично. Спасибо!
Страницы: 1
Наверх