Страница: 1 |
Страница: 1 |
Вопрос: Excel - непонятки...
Добавлено: 28.09.05 17:32
Автор вопроса: Слегач
Такая проблемка. Выполняется нижеприведенный код:
Excel.Workbooks.Open (PathName)
Excel.Workbooks(FileTitle).Activate
Excel.Worksheets(SheetName).Activate
...
Excel.Workbooks.Close
Excel.Application.Quit
И все бы хорошо... но вплоть до самого закрытия приложения, в котором код выполняется,
Excel висит процессом в памяти, т.е. реально не закрывается (или не выгружается?)...
Не подскажет кто, в чем трабла? Пробовал и другими методами - один фиг... Нииччче не понимаю!!
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #1
Добавлено: 28.09.05 17:46
Че то я не понял... Приведи код где ты создаешь Excel-приложение...
Номер ответа: 2
Автор ответа:
el-paso
Вопросов: 3
Ответов: 164
Профиль | | #2
Добавлено: 28.09.05 18:08
Забавная трабла. ) ИМХО, из-за употребления глобальными свойствами. Где-то
у тебя создаётся два (!) объекта типа Excel.Application. В конце процедуы ты
один из них освобождаешь через метод Quit, а второй остаётся болтаться в
памяти и смущает тебя.
Вот посмотри на этот код (он работает чисто):
'
Dim a As Excel.Application
Dim b As Excel.Workbook
Dim s As Excel.Worksheet
'
Set a = New Excel.Application
Set b = a.Workbooks.Add
Set s = b.Worksheets(1)
'
b.Activate
s.Activate
'
' ...здесь делаем всё, что надо...
'
a.Quit
'
End Sub
Особенность его в том, что ты сам создаёшь и контролируешь каждый объект.
Сам создаёшь одно приложение. Именно в нём создаёшь рабочую книгу. И именно
в этой рабочей книге работаешь с листами.
Если приведёшь полностью свой код, тогда можно будет разобраться, где у тебя
ошибка.
Номер ответа: 3
Автор ответа:
el-paso
Вопросов: 3
Ответов: 164
Профиль | | #3
Добавлено: 28.09.05 18:11
ЗЛОупотребления* Очепятался...