Копирование листа в Excel #81845


#0 by Camino
Всем день добрый. Есть проблема: Необходимо по OLE скопировать ёксельный лист. Если я пишу: то лист копируется в новую книгу. Читаю хэлп, вижу там следующие строки: expression.Copy(Before, After) Before   Optional Variant. The sheet before which the copied sheet will be placed. You cannot specify Before if you specify After. After   Optional Variant. The sheet after which the copied sheet will be placed. You cannot specify After if you specify Before. После этого пишу следующую конструкцию: И получаю долгое послание от экселя. Кто-нибудь в курсе, как с таким бороться? Что ему надо передать в качестве параметра After?
#1 by vS
Может попробовать вместо 2 написать "Вклад...." или попробуй сделать запись макроса и скопировать лист после.. посмотри что за код будет
#2 by Дурочкааа 1С
#3 by OFF
Sheets("Вкладные листы").Copy Before:=Sheets?
#4 by Camino
Пробовал. В макросе пишет примерно как в . А бейсиковская нотация в 1С не прокатит.. Попробовал. То же самое: Copy method of Worksheet class failed
#5 by vS
а если...
#6 by vS
наверно с пробелом не возьмет...
#7 by vS
Дим, думаю... чето не выходти, цветок каменный...
#9 by 427
Вечером... Сейчас некогда искать..
#10 by vS
незнаю чето даже сам ексель не хочет с 3им синтаксисом работать
#11 by Дурочкааа 1С
Так часто бывает, что когда синтаксис при работе из 1С неверный и ексель зависает или пишет Copy method of Worksheet class failed, то файл остается не закрытым и, даже, если потом написать правильно, метод все равно не работает. Надо нормально отрыть-закрыть файл (не выполняя глючного метода) и после этого пробовать другой вариант синтаксиса.
#12 by Camino
Примерно такая конструкция и есть. Копируемый лист активен. Тоже пробовал. Sheets и Worksheets - полные синонимы Да вроде бы закрывал и открывал нормально. Инстанс прибивал в диспетчере задач..
#13 by Camino
Таак. Половину проблемы решил: ёкселю не нравится первый пустой параметр. Попробовал добавить лист перед, а не после - сработало. Теперь буду думать, что туда передать в качестве первого параметра..
#14 by Camino
Всем спасибо :) Разобрался. Написал xl.Sheets("Вкладные листы").Copy(null,xl.Sheets); и все заработало.
#15 by Дурочкааа 1С
Ничего не ругается, копия Лист3 честно вставилась вторым листом. Что я неправильно делаю?
#16 by vS
ты делаешь перед, а Дима после... потому он Camino, а ты не очень :)
#17 by Кофеин
:) все неправильно
#18 by Camino
Все это в v8 делается, ессно. Сначала подумал, что это неважно, а потом вспомнил, что в семерке null нету. Видимо можно будет применить ПустоеЗначение.
#19 by Дурочкааа 1С
Договаривай, договаривай ... Cam in - Кулак в
#20 by Дурочкааа 1С
Чёртов партизан!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С