Доброго времени суток!
Если никто не будет возражать, я снова решил задать пару вопросов.
Первий немного ламерский, как говорят, но все-таки я его задам, ведь на него ответ так и не нашол.
Почему у меня программно копируется выбраннная область из одного Листа в буфер обмена, но в другой Лист в соответствуюющих размеров область не вставляться.
Писал и так Call wb.Sheets(TipOrg).Paste, wb-рабочая книга, TipOrg- имя Листа.
И так, наподобе как в макросе записано
Call EWindow.ActiveSheet.Paste,
где EWindow задаётся таким образом, как обычно
Set EWindow = CreateObject("Excel.Application").
Ну и так писал Call ws.Paste , где ws - текуший лист, тоесть он же Лист с Именем TipOrg.
Смотрел в хелпе, пишется, что для пейста есть какие-то параметры, но они не обязательны. Главное выделить предварительно ту область, в которую будет вставлен скопированный фрагмент. Копируется область "А3:Т11" с одного Листа в другой.
Вот вставка. Скопированный фрагмент в буфере обмена, но он не вставляется.
ws.Name = TipOrg
Call wb.Sheets(TipOrg).Select
Call ws.Range("A3:T11").Select
Call ws.Range("T11").Activate
Call wb.Sheets(TipOrg).Paste 'На этой строке вылетает ошибка
Но ничего не дало конкретного результата.
Эксель выбивал ошибку.
Метод Paste из класса Worksheet завершен неверно.
Вот значит первый вопрос.
Второй вопрос. Как програмно очистить буфер обмена оффиса? Я записал макрос очистки всего буфера, тоесть
Макрос-Начать запись. Потом нажимаю Очистить все для буфера обмена, смотрю этот макрос, а он пустой.