Страницы: 1
RSS
VBA .Copy - копирование не видимых ячеек(автофильтром), Как подружить .Copy и автофильтр?
 
Доброго дня, подскажите пожалуйста. Вопрос скорее к пониманию механики работы.
Хотелось бы скопировать и ставить на свое место массив А2:С5, при применении автофильтра.
Если функцией "скрыть" строку или столбец, копирование массива и вставка его на своем место происходит корректно.
Если же к строкам будет применен автофильтр начинается цирк:
- например скрыта строка №2 - копироваться будут только видимая часть массива, причем вставка пройдет именно на нужную первую строку массива, тем самым все "съедет"
-  например скрыта строка №3 - также копироваться будет только видимая часть массива, причем разбитая соответственно. При вставке появляется ошибка, что нге соответствую массивы копирования - вставки.
- например будут скрыты все строки, кроме №5 - также копироваться будет только видимая часть массива. А при вставке произойдет "автозаполнение" на все скрытые ячейки.

Что касается вставки во всех примерах - все почти логично и понятно. Копируемый массив меньше вставки - значит вставка сместиться влево-вверх. Копируемый массив раздроблен  - ошибка. Хотя почему бы не вставить по выше описанной логике?!. Копируемый массив цельно-кратно меньше массива вставки - автозаполнение.

А вот про копирование не понятно - почему удается скопировать массив из "скрытых" ячеек, и НЕ удается скопировать массив из "скрытых автофильтром"?

тест:
Код
Sub test()
Range("A2:C5").Copy
Range("A2:C5").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub


 
Не перестаю удивляться возможностям excel и VBA.
 
Код
Sub test_Value()
    Range("A2:C5").Value = Range("A2:C5").Value
End Sub
 
RAN, Ох, совсем забыл про это. Спасибо.
Не перестаю удивляться возможностям excel и VBA.
Страницы: 1
Наверх