Доброй ночи!
Есть файл, в котором, 10 первых строк и первые 2 столбца чем-то заняты,
Исполняю что-то вроде:
Sub macrocros()
Dim wsT As Worksheet, wsTC As Worksheet
Set wsT = ActiveSheet
wsT.Range(Cells(1, 1), Cells(10, 2)).Copy 'если написать это же не до, а после след.строчки, ошибка
Workbooks.Add xlWBATWorksheet: Set wsTC = ActiveSheet
wsTC.Paste Destination:=wsTC.Cells(10, 1)
wsTC.Activate 'это можно не делать, он и так активен, но всё же
b = ActiveSheet.UsedRange.Rows.Count 'Не считает! Производит подсчёт с изначального листа, а не с нового, активного.
End Sub
Вообще, вопроса 2:
1. Как заставить работать ActiveSheet.UsedRange.Rows.Count во вновь созданной книге/листе корректно, а не считать значения книги, открытой в прошлом.
2. Почему-то если wsT.Range(Cells(1, 1), Cells(10, 2)).Copy написать после того, как создана новая книга (и, соответственно, активирована, появляется ошибка 1004. Странная работа с диапазаонами. В чём причина ошибки?
Прошу прощения если вопрос легковат/глуповат, учусь.
Есть файл, в котором, 10 первых строк и первые 2 столбца чем-то заняты,
Исполняю что-то вроде:
Sub macrocros()
Dim wsT As Worksheet, wsTC As Worksheet
Set wsT = ActiveSheet
wsT.Range(Cells(1, 1), Cells(10, 2)).Copy 'если написать это же не до, а после след.строчки, ошибка
Workbooks.Add xlWBATWorksheet: Set wsTC = ActiveSheet
wsTC.Paste Destination:=wsTC.Cells(10, 1)
wsTC.Activate 'это можно не делать, он и так активен, но всё же
b = ActiveSheet.UsedRange.Rows.Count 'Не считает! Производит подсчёт с изначального листа, а не с нового, активного.
End Sub
Вообще, вопроса 2:
1. Как заставить работать ActiveSheet.UsedRange.Rows.Count во вновь созданной книге/листе корректно, а не считать значения книги, открытой в прошлом.
2. Почему-то если wsT.Range(Cells(1, 1), Cells(10, 2)).Copy написать после того, как создана новая книга (и, соответственно, активирована, появляется ошибка 1004. Странная работа с диапазаонами. В чём причина ошибки?
Прошу прощения если вопрос легковат/глуповат, учусь.