如何使用 openpyxl 在工作簿中对 excel sheets/tabs 进行排序

How can I sort excel sheets/tabs in workbook using openpyxl

我需要按字母数字对工作簿中的 tabs/sheets 进行排序。我正在使用 openpyxl 来操作工作表。

您可以尝试对 workbook._sheets 列表进行排序。

workbook._sheets = sorted(workbook._sheets)

这可能会导致活动工作表(由索引引用)悄无声息地更改,因此排序操作后应跟 workbook.active = 0.

我会先尝试使用测试数据,因为直接访问所谓的“私有”_sheets 属性可能会搞砸并破坏您的数据。

根据下面 Charlie Clark 的评论,使用所谓的“私有”属性可能会损害模块的工作方式。如果你想让它正确阅读源代码以了解它涉及的内容,然后 class Workbook class 添加一个新的排序方法。

... 请记住,更新 openpyxl 可能会导致您精心制作的 subclass 不再工作。您可能会建议将排序方法包含在 openpyxl 代码中,以便对其进行充分维护。

Python不禁止你把电脑变成不听话的怪物,只要你喜欢

We are all consenting adults here.

Guido von Rossum