Hinzufügen von Excel-Dateispalten und Löschen von Zeilen mithilfe von Python Openpyxl

Überblick

Ich hatte die Möglichkeit, eine Excel-Datei für eine Weile in meiner Arbeit zu verarbeiten, also für die damalige Verarbeitung Ich habe versucht, den Vorgang des Hinzufügens von Spalten zur Excel-Datei und des Löschens von Zeilen unter bestimmten Bedingungen zusammenzufassen. Dies kann nützlich sein, wenn Sie die Vorlage oder die Originaldaten ein wenig verarbeiten müssen.

Dinge notwendig

Diesmal gibt es keine Exe.

Erscheinungsort

Es wird auf github veröffentlicht.

Wie benutzt man

Artikelnummer Blattname Spaltenname Erläuterung
1 Zusätzliche Spalten Artikelname Stellen Sie den Wert ein, der dem Spaltennamen der Referenzdaten entspricht
Als Spaltennamen hinzufügen
2 Zusätzliche Spalten Zusätzliche Spalten Kriteriendaten Zur angegebenen Spalte hinzufügen Satz ab Spalte A.
3 Zusätzliche Spalten zusätzliche Daten Geben Sie das Blatt an, das die hinzuzufügenden Daten beschreibt. Stellen Sie für Daten den Wert ein, der der Zeilenposition entspricht.
4 Zeile löschen Artikelname Geben Sie den eingestellten Wert an, der dem Spaltennamen der Referenzdaten entspricht.
Geben Sie die Spalte an, die für den Zustand der zu löschenden Zeile verwendet werden soll.
5 Zeile löschen Bedingungen 削除する行のBedingungenを指定する。

Quellenbeschreibung

Die folgende Verarbeitung ist Teil der Spaltenadditionsverarbeitung. Ein Blatt, das den Spaltennamen und die Position, die aus der erfassten Datei hinzugefügt werden soll, erfasst und die Daten weiter beschreibt Ich erhalte die Daten zum Hinzufügen. Die Spalte wird an der Position hinzugefügt, die durch die Methode "inser_cols" angegeben wurde. Der Wert wird in der Spalte festgelegt, in der die Daten erfasst und hinzugefügt wurden. Ich zeichne auch einen Rahmen, wenn ich den Wert einstelle.

        for columninfo in addColumnInfos:
            addColumnName=columninfo[1]
            addColumnPosition=columninfo[2]
            addColumnData=columninfo[3]
            addColmunDatas=inputWorkbook.parse(addColumnData)
            addDatas=np.asarray(addColmunDatas)
            baseSheet.insert_cols(addColumnPosition,1)
            baseSheet.cell(column=addColumnPosition,row=2,value=addColumnName).border=blackBorder
            for i,data in enumerate (addDatas):
                baseSheet.cell(column=addColumnPosition,row=i+3,value=data[1]).border=blackBorder

Die folgende Verarbeitung ist der Teil zum Löschen von Zeilen. Ermittelt den Spaltennamen und die Löschbedingung, für die die zu löschenden Bedingungen angegeben sind, aus der erfassten Datei. Danach, nachdem Sie die Position der zu löschenden Zeile festgelegt haben (die Bedingung wird durch Abfrage von Pandas erhalten) Die Position wird mit der Methode delete_rows gelöscht. Wenn Sie eine Zeile löschen, wird diese durch den gelöschten Betrag verstopft, sodass die Position der Zeile korrigiert wird.

        for columninfo in addColumnInfos:
            delTargetColumnName=columninfo[1]
            delRowCondition=columninfo[2]
            deleteRows=targetDeleteRowSheet.query(delTargetColumnName+'=="'+delRowCondition+'"')
            deleteIndexs=deleteRows.index

            log.info(deleteIndexs)
            for delcount,delindex in enumerate(deleteIndexs):
                
                baseSheet.delete_rows(startIndex+delindex-delcount)

Wie benutzt man

Dieses Mal wird es basierend auf den Bedingungen der entsprechend definierten Datei gelöscht. Löschen Sie beispielsweise eine Zeile, deren Ergebnis der Übersichtstabelle 0 ist. Es kann als eine der Methoden bei der Verarbeitung von Excel verwendet werden, z. B. das Hinzufügen einer Spalte zu einem Formular und das Vorbereiten für die Übermittlung.

Recommended Posts

Hinzufügen von Excel-Dateispalten und Löschen von Zeilen mithilfe von Python Openpyxl
Python-Dateiverarbeitung
Zusammenfassung der Excel-Operationen mit OpenPyXL in Python
Dateiverarbeitung in Python
Versuchen Sie, eine komprimierte Datei mit Python und zlib zu erstellen
Versuchen Sie, eine Excel-Datei mit Python (Pandas / XlsxWriter) zu betreiben
Versuchen Sie, eine Excel-Datei mit Python (Pandas / XlsxWriter) zu betreiben
Fügen Sie das Bild mit Pythons openpyxl in eine Excel-Datei ein
Verwenden des Python-Modus in der Verarbeitung
[Bildverarbeitung] Poo-san ist durch Kantenerkennung mit Python und OpenCV nackt!
Python-Parallelverarbeitung (Multiprocessing und Joblib)
Authentifizierung mit Tweepy-User-Authentifizierung und Anwendungsauthentifizierung (Python)
Lesen und Schreiben von Python CSV-Dateien
Clustering und Visualisierung mit Python und CytoScape
Extrahieren Sie die Targz-Datei mit Python
Python-Memo ① Ordner- und Dateivorgänge
Excel-Diagrammerstellung mit Python xlwings
Python String Processing Map und Lambda
[Python] Dateivorgang mit der if-Anweisung
Sugoroku-Spiel und Zusatzspiel mit Python
[Python] [Excel] Betreiben Sie Excel-Tabellen in Python mit openpyxl (am Beispiel eines Testblatts).
Öffnen Sie eine Excel-Datei in Python und färben Sie die Karte von Japan