Как создать и сохранить новый пустой лист в excel на python 3

Есть .xlsx файл в нем содержится несколько листов. Нужно к этому всему добавить еще один пустой лист. Вариантов того, как это сделать тьма тьмущая:

def create_list():
    path = 'list1.xlsx'
    book = load_workbook(path)
    writer = pd.ExcelWriter(path, engine='openpyxl')
    writer.book = book
    x3 = np.random.randn(100, 2)
    df3 = pd.DataFrame(x3)
    df3.to_excel(writer, sheet_name='aaaaaa')
    writer.save()
    writer.close()
def create_list1(book):
    wb = load_workbook(book)
    ws = wb.create_sheet('Students')
    save_workbook(wb, 'list1.xlsx')

Второй вариант хотя бы создает этот новый лист, но не сохраняет, то есть если файл открыть, там будет введите сюда описание изображения: Все варианты развития событий с другими кодами из интернета:

  • Создается новый лист, со звездочкой, то есть не сохраняется
  • С помощью pandas, вся таблица создается с нуля и создается один пустой новый лист, тоже со звездочкой.
  • В большинстве случаев просто ничего не создается.

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

def set_new_value(coor:list, new_value):
    wb = xw.Book('list1.xlsx')
    sht1 = wb.sheets['Лист1']
    b = dig_to_bukva(coor[0])
    c = (coor[1])
    sht1.range(f'{b}{c}').value = new_value
    wb.save("list1.xlsx")

Таким образом вопрос такой, как создать в существующем ексель файле новый пустой лист так, чтобы не появлялось "звездочки".


Ответы (0 шт):