Как сохранить в указанный каталог c с помощью openpyxl? - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь сохранить книгу Excel, созданную с помощью openpyxl, в определенный каталог c, который пользователь вводит с помощью кнопки «Обзор» Tkinter. У меня есть книга, сохраненная во введенном «месте сохранения», но я получаю сообщение об ошибке, говорящее, что это каталог.

Внутри функции, которая создает книгу, у меня есть:

wb.save(save_spot)

«Место сохранения» создается с помощью функции:

def set_save_destination():
    global save_spot
    save_spot = filedialog.askdirectory()
    save_spot = str(save_spot)

Пользователь получает чтобы выбрать каталог с помощью следующего кода Tkinter GUI в моем классе GUI:

monthly_browse = ttk.Button(self, text='Select Save Destination', command=set_save_destination)

Я получаю сообщение об ошибке IsADirectoryError, но я не уверен, в чем проблема, поскольку говорит, что вы можете напрямую войти в каталог в методе сохранения. Я новичок в программировании и полностью самоучка, поэтому любая помощь будет отличной! Спасибо!

1 Ответ

1 голос
/ 16 июня 2020

вам необходимо указать полный путь к желаемой папке, см. Пример ниже

from openpyxl import Workbook
wb = Workbook()
ws1 = wb.active
ws1.title = "1st Hour"
wb.save('/home/user/Desktop/FileName.xlsx')

, чтобы вы могли дополнительно добавить имя файла в переменную save_spot

    save_spot = str(save_spot)+'/filename.xlsx'
...