У меня есть несколько файлов txt, которые я могу объединить и записать в разные листы excel по приведенному ниже коду:
for file in list(file_lists):
filename = os.path.join(path, file)
df = pd.read_table(filename,sep="|",encoding = "ISO-8859-1")
df.to_excel(writer, sheet_name=file[:-4], index=False,header=True)
writer.save()
Я хочу создать еще один лист (Name = "Домашняя страница"), который будет содержать разные имена листов в виде гиперссылок. Я должен был бы нажать на эту гиперссылку, которая приведет меня к соответствующим листам. Есть ли способ сделать это? Любые примеры кода были бы полезны, аналогичные коды, доступные в SO, мне не помогают.
Это не вопрос pandas
, так как функция pandas.to_excel
имеет очень мало общего с форматированием и разметкой, используемой на листе excel.
Вы можете посмотреть xlsxwriter
который специально форматирует файлы xlsx
.
Это пример кода для форматирования hyperlinks
, он адаптирован из документации, где вы можете прочитать больше.
###############################################################################
#
# Example of how to use the XlsxWriter module to write hyperlinks
#
# Copyright 2013-2018, John McNamara, [email protected]
#
import xlsxwriter
# Create a new workbook and add a worksheet
workbook = xlsxwriter.Workbook('hyperlink.xlsx')
worksheet = workbook.add_worksheet('Hyperlinks')
# Format the first column
worksheet.set_column('A:A', 30)
# Add a sample alternative link format.
red_format = workbook.add_format({
'font_color': 'red',
'bold': 1,
'underline': 1,
'font_size': 12,
})
# Write some hyperlinks
worksheet.write_url('A1', 'http://www.python.org/') # Implicit format.
worksheet.write_url('A3', 'http://www.python.org/', string='Python Home')
worksheet.write_url('A5', 'http://www.python.org/', tip='Click here')
worksheet.write_url('A7', 'http://www.python.org/', red_format)
worksheet.write_url('A9', 'mailto:[email protected]', string='Mail me')
# Write a URL that isn't a hyperlink
worksheet.write_string('A11', 'http://www.python.org/')
workbook.close()