2016-06-07 7 views

Antwort

1

Sie können versuchen, die workbook._sheets Liste zu sortieren.

workbook._sheets = sorted(workbook._sheets) 

Das in dem aktiven Arbeitsblatt führen kann (bezeichnet durch einen Index) still zu ändern, so sollte der Sortiervorgang durch so etwas wie workbook.active = 0 folgen.

Ich würde es zuerst mit Testdaten versuchen, da der direkte Zugriff auf das sogenannte "private" Attribut Dinge vermasseln und Ihre Daten beschädigen könnte.

Laut dem Kommentar von Charlie Clark können die Verwendung sogenannter "privater" Attribute die Funktionsweise eines Moduls beeinträchtigen. Wenn Sie es richtig machen wollen, lesen Sie die Quelle gründlich, um zu verstehen, worum es sich handelt, und unterlassen Sie die Klasse Workbook, um eine neue Methode hinzuzufügen, die die Sortierung durchführt.

... und bedenken Sie, dass die Aktualisierung openpyxl dazu führen kann, dass Ihre fein ausgearbeitete Unterklasse nicht mehr funktioniert. Sie können vorschlagen, die Sortiermethode in den Code openpyxl einzuschließen, damit sie angemessen verwaltet wird.

Python verbietet dir nicht, deinen Computer in ein ungehorsames Monster zu verwandeln, solange es dir gefällt.

Wir sind alle einverstanden Erwachsene hier.

Guido von Rossum

+0

Während dies selbst nicht beeinflussen Arbeitsblatt, ist es nicht ratsam, mit privaten Attributen zu empfehlen. –

Verwandte Themen