С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/40: Рейтинг темы: голосов - 40, средняя оценка - 4.95
0 / 0 / 1
Регистрация: 28.12.2016
Сообщений: 56

Работа с Excel

03.05.2018, 12:29. Показов 8097. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Работаю с файлом Excel: записываю информацию на разные листы. Затем сохраняю файл с помощью функции save() и закрываю с помощью функции close(). Файл сохраняется и закрывается, но остается открытым само приложение Excel...
Может кто-нибудь знает как его закрыть?
Для записи данных в Excel использую библиотеку xlwings.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2018, 12:29
Ответы с готовыми решениями:

Работа с документами Excel без Microsoft.Office.Interop.Excel
всем добрый день все дело в том что для своих программ я использую БД Excel но! однако не все устанавливают на компьютере Office, да и...

Работа с Excel (нет доступа к пространству имен Excel)
Здравствуйте! У меня проблема в том, что я делаю все так как там, но выдает ошибку в строчках на слова Excel, например: ...

Работа с Excel через Microsoft.Office.Interop.Excel
Необходимо реализовать програмку взаимодействующую с Excel в режиме реального времени. Проблем несколько: 1. Как сделать так,...

12
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
03.05.2018, 12:46
Цитата Сообщение от daria13 Посмотреть сообщение
но остается открытым само приложение Excel
Не удается добиться такого поведения, Excel закрывается, приведите минимальный код который не закрывает Excel
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
03.05.2018, 16:20
xl.quit()?
0
0 / 0 / 1
Регистрация: 28.12.2016
Сообщений: 56
12.05.2018, 19:58  [ТС]
Цитата Сообщение от ТабуретY Посмотреть сообщение
минимальный код который не закрывает Excel
Код:
Python
1
2
3
4
5
import xlwings as xw
wb = xw.Book('File.xlsx')
#открываю некоторые листы и записываю в них информацию из списков
wb.save()
wb.close()
Закрывает файл, но остается то, что на приложенной картинке. Может быть есть способ открывать файл Excel вообще в фоновом режиме?

Цитата Сообщение от dondublon Посмотреть сообщение
xl.quit()
он ее не понимает с такой библиотекой.
Миниатюры
Работа с Excel  
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
14.05.2018, 11:05
daria13, а вы точно вызываете quit у объекта-приложения, а не книги?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
14.05.2018, 14:04
На винде нужно либо делать app.kill(), либо удалять объект приложения после quit():
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
import time,os
import xlwings as xw
 
app = xw.App(visible=False) # режим без видимого GUI
PID = app.pid
print(os.system('tasklist /FI "PID eq %d"' % PID)) # для теста смотрим наличие процесса 
time.sleep(3)
#app.kill()  # просто убиваем процесс средствами ос
app.quit()   # или все таки культурно предлагаем процессу закруглиться и затем удаляем ссылку на объект
del app  # если не удалить ссылку на объект - процесс будет висеть до выхода из скрипта
print('quit excel')
print(os.system('tasklist /FI "PID eq %d"' % PID)) # процесс должен исчезнуть
time.sleep(30)
Добавлено через 47 минут
P.S. Почему-то с открытой книгой (которой мы потом сделали close) вариант с
Python
1
2
app.quit()
del app
не работает.
Только app.kill()
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
14.05.2018, 14:21
Цитата Сообщение от Garry Galler Посмотреть сообщение
app.quit()
del app
не работает.
Я как-то сто лет назад с подобным сталкивался.
При close он воспроизводит поведение обычного екселя, а именно - выдаёт гуишное окошко "сохранить - не сохранять - отмена" и так с ним и висит. В этом состоянии таки да, только kill

Добавлено через 2 минуты
Да, кстати, с quit-ом та же петрушка.
0
0 / 0 / 1
Регистрация: 28.12.2016
Сообщений: 56
24.05.2018, 11:50  [ТС]
Цитата Сообщение от Garry Galler Посмотреть сообщение
app = xw.App(visible=False) # режим без видимого GUI
У меня вообще ничего не получилось... Ни с невидимостью, ни с kill().Я так поняла, это потому что я вызываю книгу... Он говорит что для Book() он не знает App()
Python
1
wb = xw.Book('Название файла.xlsx')
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
24.05.2018, 13:27
чего-чего он говорит?
0
0 / 0 / 1
Регистрация: 28.12.2016
Сообщений: 56
24.05.2018, 13:33  [ТС]
Цитата Сообщение от dondublon Посмотреть сообщение
чего-чего он говорит?
Забыла прикрепить ошибку
AttributeError: 'Book' object has no attribute 'App'
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
24.05.2018, 14:05
Но я не вижу, чтобы атрибут App где-то запрашивался.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
24.05.2018, 14:09
Лучший ответ Сообщение было отмечено daria13 как решение

Решение

daria13,
А документацию прочитать?
Естественно, такого атрибута у книги нет. Но никто и не говорил, что все эти методы нужны применять к Book.
Впрочем, у каждого экземпляра Book есть атрибут book.app - то есть доступ к уже запущенному экземпляру приложения. И к нему также можно применять все методы класса App.
Но при использовании такого способа доступа
Python
1
2
3
book = xw.Book("1.xlsx")
app = book.app
app.visible = False
у вас приложение сначала запустится в видимом режиме и только через 1-2 секунды станет невидимым.
А если напрямую создавать экземпляр приложения и обращаться к нему - тогда Excel будет сразу запущен в невидимом режиме.
1
0 / 0 / 1
Регистрация: 28.12.2016
Сообщений: 56
30.05.2018, 10:13  [ТС]
Цитата Сообщение от Garry Galler Посмотреть сообщение
Естественно, такого атрибута у книги нет
Спасибо большое)
Буду стараться читать внимательнее
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.05.2018, 10:13
Помогаю со студенческими работами здесь

Работа с Excel. Суть: Если номер строки в Excel четный тогда объеденяем эту ячейку с последующей.
Здравствуйте. Помогите, пожалуйста .Я вот в Delphi осуществляю работу с документов в Excel, как я могу записать, чтобы выполнялся алгоритм:...

Большая работа с Excel (передача в него данных, построение графиков, дозапись, создание нового файла Excel)
Всем участниками большой привет. Снова нужна помощь. Что имеем: -Имеем форму во вложении. на ней есть 30 нужных нам текстбоксов,...

Экспорт в Excel: Прекращена работа программы "Microsoft Excel"
Файл сохраняется успешно, но поле строки excelApp.Quit(); Появляется окно ошибки Excel: Прекращена работа программы "Microsoft...

Работа с Excel и "висячий процесс" EXCEL
Доброго времени суток. Помогите решить следующие проблемы. Создаю процесс Excel и создаю рабочую книгу: try {// Присоединение к...

работа в Excel
Задание по информатике Что-то вроде создания турфирмы Выглядеть это должно вот так...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru