how to use openpyxl to generate toc for excel file

网上的教程一般都是通过vba来实现的,但是这样必须要enable 宏。

以下的方法使用openpyxl ,不需要宏,但是需要安装Python和openpyxl 。

from openpyxl import Workbook, load_workbook

def main():
    file_name = r"your_excel_file.xlsx"
    wb = load_workbook(filename=file_name)
    toc_sheet = wb["TOC"]
    for index, sheet_name in enumerate(wb.sheetnames, 1):
        toc_sheet.cell(index, 1).value = index
        hyper_text = "#'" + sheet_name + "'!A1" # point to the first cell
        #print(hyper_text)
        toc_sheet.cell(index, 2).value = sheet_name
        toc_sheet.cell(index, 2).hyperlink = hyper_text
        toc_sheet.cell(index, 2).style = "Hyperlink"  # this line is must, else there will not have hyperlink style, but the hyperlin is worked

    wb.save(file_name)


if __name__ == '__main__':
    main()
发布了420 篇原创文章 · 获赞 29 · 访问量 94万+

猜你喜欢

转载自blog.csdn.net/lantianjialiang/article/details/103155995