Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.06.2011, 05:32   #1
kaljan775
:D
Форумчанин
 
Аватар для kaljan775
 
Регистрация: 26.09.2010
Сообщений: 570
По умолчанию C# excel таблицы

проблема следующая - при SaveAs после .Close() не закрывается родительский объект, висит в процессах, код следующий:

Код:
...
xlWorkBook = xlApp.Workbooks.Open(pathToFile, 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, '\t', true, false, 0, true, 1, 0);
...
xlWorkBook.SaveAs(pathToSaveFile, Excel.XlFileFormat.xlWorkbookNormal, mV, mV, mV, mV, Excel.XlSaveAsAccessMode.xlExclusive, mV, mV, mV, mV, mV);
xlWorkBook.Close(true, mV, mV);//закрытие книги
xlApp.Quit();//закрытие приложения
...
...
подскажите, в какую сторону копать, не могу же я закрыть книгу, потом пересохранить её и снова закрыть.
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery
kaljan775 вне форума Ответить с цитированием
Старый 29.06.2011, 06:10   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Вроде бы, всё верно написано.

Только книгу вы сохраняете 2 раза подряд - первый раз командой SaveAs, а второй раз - командой Close (поскольку первому параметру метода - SaveChanges - назначено значение true)

Что можно проверить (добавив строки перед xlApp.Quit):
1) проверить количество открытых книг: xlApp.Workbooks.Count - их должно быть 0
2) отключить вывод предупреждений: xlApp.DisplayAlerts = false
EducatedFool вне форума Ответить с цитированием
Старый 29.06.2011, 06:46   #3
kaljan775
:D
Форумчанин
 
Аватар для kaljan775
 
Регистрация: 26.09.2010
Сообщений: 570
По умолчанию

Код:
xlWorkBook.Close(true, pathToSaveFile, mV);
все отлично, благодарю за подсказку,
теперь исполнительные файлы EXCEL.EXE не плодятся , остается всего один файл после закрытия программы, при дальнейших запусках программы количество экзешников не увеличивается. Подозреваю, что все в порядке
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery
kaljan775 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование таблицы Excel в MS-Word rakushka108 Microsoft Office Excel 0 13.04.2011 02:27
Импорт таблицы из Access в Excel Callika Microsoft Office Excel 6 17.03.2011 22:10
из таблицы word в excel almazenok Общие вопросы Delphi 0 03.02.2011 14:41
Выгрузить заголовки таблицы в Excel NZero Общие вопросы .NET 3 16.12.2010 09:11
Заголовки таблицы в Excel zetrix Microsoft Office Excel 0 30.10.2006 19:36