Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Excel не выгружается! Помогите! Добавлено: 16.02.06 21:32  

Автор вопроса:  shelte-don
У меня на компе установлен Excel 2003!
Я открываю файл и меняю в нем часть инф-ции!
Затем сохраняю и пытаюсь закрыть вот как:

 Public ExApp As Excel.Application
........................
PutFile = Application.StartupPath
PutFile = Mid(PutFile, 1, Len(PutFile) - 4)
PutFile = PutFile & "\Files\Dvutavri.xls"
ExApp = CreateObject("Excel.Application")
ExApp.Workbooks.Open(Filename:=PutFile)
With ExApp
                    .Range("B3").Value = Bdv2
                    .Range("C3").Value = Hdv2
                    .Range("D3").Value = Tdv2
                    .Range("F3").Value = Sdv2
                    .Range("G3").Value = Rdv2
                    .SaveWorkspace()
                End With
                ExApp.Quit()

Все отрабатывает нормально, после этого в процессах все равно продолжает висеть EXCEL.EXE!
Как сделать так чтобы он закрывался и выгружался из процессов?
Заранее спасибо!

Ответить

  Ответы Всего ответов: 24  

Номер ответа: 1
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #1 Добавлено: 16.02.06 21:41
Блин, на работе сырцы все. Но клоцаць все надо.

Ответить

Номер ответа: 2
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #2 Добавлено: 17.02.06 05:04
Видимым его сделай, сразу поймёшь, почему висит...
Потому что книга не сохранена... и сохранение рабочей области тут ни при чём...

Ответить

Номер ответа: 3
Автор ответа:
 shelte-don



Вопросов: 8
Ответов: 15
 Профиль | | #3 Добавлено: 17.02.06 10:31
Сделал я видимым его! После сохранения рабочей области и выполнения Quit, excel закрывается! Весь!
А в процессах по прежнему множатся EXCEL.EXE!

Ответить

Номер ответа: 4
Автор ответа:
 the Pagan



ICQ: нет 

Вопросов: 19
Ответов: 27
 Web-сайт: gazprommed.irk.ru
 Профиль | | #4
Добавлено: 20.02.06 08:24
Попробуй так:

Dim xlApp As Object
Dim xlBook As Object
Dim xlSheet As Object
        
Set xlApp = CreateObject("Excel.Application";)
Set xlBook = xlApp.Workbooks.Open(App.Path & "\Files\template.xls";)
Set xlSheet = xlBook.Worksheets(1)

Ну и Save всё и Quit

Ответить

Номер ответа: 5
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #5 Добавлено: 20.02.06 18:40
Нее, парни... тут не все так просто как кажется. Я где-то в инете видел инфу по поводу этого глюка. Там было подробно описано почему это происходит и как с этим бороться. Если кто найдет, отпишитесь плиз..

Ответить

Номер ответа: 6
Автор ответа:
 SerJ



Вопросов: 24
Ответов: 332
 Профиль | | #6 Добавлено: 21.02.06 11:06
А про
Set xlSheet=Nothing
Set xlBook=Nothing
Set xlApp=Nothing

забыли?

Ответить

Номер ответа: 7
Автор ответа:
 SerJ



Вопросов: 24
Ответов: 332
 Профиль | | #7 Добавлено: 21.02.06 11:24
Обьекты то вы создали, а кто их удалять с памяти будет?

Ой,Павел, а что это у меня sabotagerule++ ?

Ответить

Номер ответа: 8
Автор ответа:
 shelte-don



Вопросов: 8
Ответов: 15
 Профиль | | #8 Добавлено: 21.02.06 12:44
Спасибо за замечание я про это действительно забыл!
Вот только это не помогает! Все равно после каждого обращения в процессах появляется еще один Excel.Exe!
Что делать незнаю!

Ответить

Номер ответа: 9
Автор ответа:
 the Pagan



ICQ: нет 

Вопросов: 19
Ответов: 27
 Web-сайт: gazprommed.irk.ru
 Профиль | | #9
Добавлено: 21.02.06 13:46
Да, Nothing надо делать упустил!
Но только сия конструкция у меня работает и Excel в процессах не висит! Т.е. проблем нет!

WinXP SP1, VB6 SP6, Excel 2000

Ответить

Номер ответа: 10
Автор ответа:
 shelte-don



Вопросов: 8
Ответов: 15
 Профиль | | #10 Добавлено: 21.02.06 15:46
Да вот я тоже Nothing делаю и все никак! Все висит в процессах и никак оттуда не уходит!

у меня Win XP Professional SP1, Microsoft Visual Studio .NET 2003 и Microsoft Excel 2003 и такая вот беда которую я никак не могу побороть!

Ответить

Номер ответа: 11
Автор ответа:
 SerJ



Вопросов: 24
Ответов: 332
 Профиль | | #11 Добавлено: 21.02.06 17:52
Дайте мне полный код - скажу в чём гон. Это ж так просто :/

Ответить

Номер ответа: 12
Автор ответа:
 shelte-don



Вопросов: 8
Ответов: 15
 Профиль | | #12 Добавлено: 21.02.06 22:35
Вот он полный код моей процедуры!


 Public ExApp As Excel.Application
    Public ExSh As Excel.Sheets


 PutFile = Application.StartupPath
 PutFile = Mid(PutFile, 1, Len(PutFile) - 4)
 PutFile = PutFile & "\Uzli\Node20_Dv\dvutavr2_node20.xls"
 ExApp = CreateObject("Excel.Application";)
 ExApp.Workbooks.Open(Filename:=PutFile)
With ExApp
             .Range("B3";).Value = Bdv2
             .Range("C3";).Value = Hdv2
             .Range(";D3";).Value = Tdv2
             .Range("F3";).Value = Sdv2
             .Range("G3";).Value = Rdv2
             .SaveWorkspace()
        End With
        ExApp.Quit()
        ExApp = Nothing

и после этого EXCEL.exe все еще в процессах

Ответить

Номер ответа: 13
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #13 Добавлено: 22.02.06 04:58
Афигеть...
Мегакод...

Ответ №2 прочитай... внимательно... и прекрати сохранять рабочую область вместо сохранения книги...

Ответить

Номер ответа: 14
Автор ответа:
 SerJ



Вопросов: 24
Ответов: 332
 Профиль | | #14 Добавлено: 22.02.06 12:53
Ха! А я и не увидил этот .SaveWorkspace() ;)

Ответить

Номер ответа: 15
Автор ответа:
 shelte-don



Вопросов: 8
Ответов: 15
 Профиль | | #15 Добавлено: 22.02.06 16:22
Код как код! никакой и ни МЕГА! кстати!
А по поводу сохранения рабочей области я скажу так похоже дело не в этом!
Ну убрал я .SaveWorkspace()!
Вставил вместо этого сохранение книги!
И ВСЕ РАВНО ВИСИТ в процессах EXCEL.EXE!

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам