Как заставить Python изменять xlsx-файлы при открытии приложения Excel?

Извините, если я задал вопрос, который, возможно, был задан раньше, но я не мог найти ответ на форумах Google и Stack Overflow.

Вопрос связан с использованием openpyxl как это самая удобная библиотека, которая работает с файлами xlsx .

  import openpyxl wb = openpyxl.load_workbook("D:/Python.xlsx") sheet = wb.active i = 0 sheet["A1"] = i wb.save("D:/Python.xlsx") 

Однако он не работает с открытым файлом excel. Я получаю сообщение об ошибке

  [Errno 13] Permission denied: 'D:/Python.xlsx' 

Я также нашел похожие вопросы:

PermissionError [errno 13] при запуске скрипта openpyxl python в Комодо

писать в открытый exceldocument

Что я могу сделать для решения этой ошибки и заставить Python работать с открытым файлом в Excel? Моя текущая версия – Python 2.7. Кроме того, если это возможно, каково решение создания такой же магии в файлах xlsm ?

UPD:

Если для первого вопроса нет решения (кроме Google Docs, возможно, благодаря @Alex), можно ли написать код, который выполняет следующий алгоритм: 1. Закройте приложение Excel и сохраните 2. У персонала на питоне, и сохранить результаты в каком-то месте в Excel 3. Открыть файл Excel в приложении Excel?

Я знаю, как делать 2. Любые мысли по 1 и 3?

UPD2:

xlwings действительно делает потрясающую работу! Только то, что мне нужно! Благодаря!

Я хочу предоставить код, который работал для меня (только другие пользователи могут найти в Google и использовать):

  import xlwings as xl import time wb = xl.Workbook.active() sheet = wb.active iter = 10 i = 0 while True: i += 1 if i <= iter: xl.Range("A1").value = i time.sleep(1) print(i) else: break wb.save() print("Done!") 

One Solution collect form web for “Как заставить Python изменять xlsx-файлы при открытии приложения Excel?”

OpenPyXL работает непосредственно с файлами; он не имеет ничего общего с программой Excel и не контролирует программу Excel. Таким образом, если файл, который он пытается изменить, заблокирован Excel, ничего не может сделать OpenPyXL.

Этот вопрос отмечен excel-vba, и это, безусловно, один из подходящих способов управления программой Excel (поэтому вы можете изменять данные во время их открытия в Excel или закрыть Excel). Если вам нужен интерфейс для Excel с использованием Python, лучшим пакетом в наши дни является xlwings .

  • Прочитайте матрицу Matlab в Python
  • Как установить оправдание в текстовом поле Tkinter
  • Python sleep () запрещает печать запятой?
  • Python Beautifulsoup get_text () не получает весь текст
  • EOF при использовании pexpect и pxssh
  • 2 раковины 1 стакан. Совместное использование очереди между двумя скриптами Python на малине Pi
  • Сбор мусора в Python для освобождения памяти
  • Местоположение @classmethod
  • Импорт модуля запросов в python не работает в OS X
  • Как загрузить и прочитать URL с универсальными символами новой строки?
  • Как создать проект scrapy от python3
  •  
    Interesting Posts for Van-Lav

    Разбор DD MM YY HH MM Столбцы SS из TXT-файла с использованием панд Python

    Как добавить библиотеки «python» в Eclypse и pydev

    Строковые подстановки на основе объекта-сопоставления (Python)

    Как распечатать из сценария Python 2.7, вызывается из Bash в PyCharm?

    Никаких изменений не обнаружено, когда я запускаю pyhon manage.py makemigrations и migrate

    Как использовать регистрацию paramiko?

    Как получить доступ к элементу набора с использованием эквивалентного объекта?

    Python, параллельно используя инструменты командной строки

    Выполнение модульных тестов по вложенным функциям

    Получение носетов Python приводит к методу tearDown ()

    Подчеркивание _ как имя переменной в Python

    PyQt (PySide), WebKit и методы экспонирования из / в Javascript

    Как заполнить переменные WTForm?

    Повторная выборка кадра данных pandas с многоиндексными таймингами

    столбцы pandas из другого DataFrame, если значение находится в другом столбце?

    Python - лучший язык программирования в мире.