xlsxwriter: дубликат рабочего листа в той же книге - PullRequest
1 голос
/ 10 ноября 2019

Я работаю над книгой и хотел бы скопировать значения, содержащиеся во всех ячейках первого листа, во второй в той же книге.

Я пыталсяс:

wb = xlsxwriter.Workbook('test.xlsx')
ws = wb.add_worksheet("Worksheet 1")

ws_1 = wb.add_worksheet("Worksheet 2")
ws_1 = ws

Но это не работает;Как я могу сделать это, используя вышеупомянутую библиотеку?

Ответы [ 2 ]

0 голосов
/ 10 ноября 2019

Я хотел бы скопировать значения, содержащиеся во всех ячейках первого рабочего листа, во второй

В XlsxWriter нет механизма для копирования данных или манипулирования ими в любомКстати, как только это входит в объекты рабочей книги / рабочей таблицы.

Однако, если вы хотите записать одни и те же данные в одну или несколько рабочих таблиц, вы можете перебирать рабочие таблицы следующим образом:

import xlsxwriter

wb = xlsxwriter.Workbook('test.xlsx')

ws_1 = wb.add_worksheet("Worksheet 1")
ws_2 = wb.add_worksheet("Worksheet 2")

for worksheet in wb.worksheets():
    worksheet.write(0, 0, 'Hello')
    worksheet.write(1, 0, 'World')

wb.close()
0 голосов
/ 10 ноября 2019

Вы можете получить справку с сайта xlsxwriter

и использовать его для копирования параметра из одного рабочего листа в другой рабочий лист

import xlsxwriter


workbook = xlsxwriter.Workbook('Expenses01.xlsx')
worksheet1 = workbook.add_worksheet()
worksheet2 = workbook.add_worksheet()
worksheet1.write('A1', 123)
expenses = (
    ['Rent', '=sheet1!A1'],
    ['Gas',   '=sheet1!A1'],
    ['Food',  '=sheet1!A1'],
    ['Gym',    '=sheet1!A1'],
)

row = 0
col = 0

for item, cost in (expenses):
    worksheet2.write(row, col,     item)
    worksheet2.write(row, col + 1, cost)
    row += 1

workbook.close()


...