Zum Hauptinhalt springen

Konvertieren einer Docx-Tabelle in Excel mit Python: Anweisung mit Beispielen und Code

Heutzutage sind Tabellenkalkulationen ein wesentlicher Bestandteil der Arbeit im Büro und zu Hause. In einigen Fällen ist es jedoch erforderlich, eine Tabelle aus dem Docx-Format in Excel zu konvertieren, um die Verarbeitung und Analyse zu vereinfachen. Mit der Programmiersprache Python kann dies schnell und effizient durchgeführt werden.

In diesem Artikel werden wir uns eine detaillierte Anleitung zum Konvertieren einer Tabelle aus dem Docx-Format in das Excel-Format mit Python ansehen. Wir stellen Ihnen auch Codebeispiele zur Verfügung, die Ihnen helfen, den Umwandlungsprozess zu verstehen und an Ihre Bedürfnisse anzupassen.

Um loszulegen, müssen Sie Python auf Ihrem Computer installieren und die erforderlichen Module und Bibliotheken installieren. Sie können dann die von Python bereitgestellten Funktionen und Methoden verwenden, um eine Datei im Docx-Format zu öffnen, Daten aus einer Tabelle zu lesen und in das Excel-Format zu schreiben.

Das Konvertieren einer Docx-Tabelle mit Python in Excel hat viele Vorteile. Erstens ermöglicht es Ihnen, den Konvertierungsprozess zu automatisieren und das manuelle Kopieren von Daten von einem Format in ein anderes zu vermeiden. Zweitens bietet Python eine große Auswahl an Tools und Funktionen für die Arbeit mit Tabellen, die es einfach machen, den Konvertierungsprozess an Ihre Bedürfnisse anzupassen und anzupassen.

Es sollte angemerkt werden, dass ein grundlegendes Python-Wissen und ein Verständnis der grundlegenden Konzepte für die Arbeit mit Tabellen bei dieser Aufgabe sehr nützlich sein werden. Selbst wenn Sie keine Programmierkenntnisse haben, können Sie die Grundlagen der Konvertierung einer Docx-Tabelle in Excel mit dieser Anleitung und Codebeispielen leicht erlernen.

Arbeitsvorbereitung

Bevor Sie eine Tabelle mithilfe von Python aus dem Docx-Format in Excel konvertieren können, müssen Sie einige Vorbereitungsschritte ausführen. Hier ist, was Sie benötigen:

  1. Installieren Sie Python auf Ihrem Computer, wenn Sie es noch nicht installiert haben. Sie können die Python-Installationsdatei von der offiziellen Website herunterladen python.org . Befolgen Sie die Installationsanweisungen, indem Sie die entsprechende Python-Version für Ihr Betriebssystem auswählen.
  2. Installieren Sie die erforderlichen Python-Bibliotheken. Um Tabellen aus dem Docx-Format in Excel zu konvertieren, benötigen wir die folgenden Bibliotheken:

Die BibliothekBefehl zum Installieren
python-docx pip install python-docx
openpyxl pip install openpyxl

Wenn diese Schritte abgeschlossen sind, sind Sie bereit, die Konvertierung einer Docx-Tabelle in Excel mit Python zu starten. Als nächstes sehen wir uns an, wie Sie dies mit bereits installierten Bibliotheken tun können.

Installieren der benötigten Bibliotheken

Um eine Tabelle mit Python aus dem Docx-Format in Excel zu konvertieren, benötigen wir bestimmte Bibliotheken. Stellen Sie zunächst sicher, dass Sie die neueste Version von Python installiert haben. Stellen Sie außerdem sicher, dass Sie pip installiert haben, ein Werkzeug zum Installieren von Python-Paketen.

Installieren Sie anschließend die benötigten Bibliotheken mithilfe der folgenden Befehle:

pip install python-docx

pip install openpyxl

Die Bibliothek python-docx ermöglicht es uns, mit Docx-Dateien zu arbeiten, und openpyxl - mit Excel-Dateien. Nachdem Sie diese Bibliotheken erfolgreich installiert haben, können Sie mit der Konvertierung der Tabelle beginnen.

Lesen einer Tabelle aus einer Docx-Datei

Zuerst müssen Sie die Python-docx-Bibliothek installieren, indem Sie den folgenden Befehl ausführen:

pip install python-docx

Nach der Installation der Bibliothek können Sie mit dem Lesen der Tabelle aus der Docx-Datei fortfahren. Um dies zu tun, müssen Sie die Datei zuerst mit der docx-Bibliothek öffnen:

import docxdoc = docx.Document('file.docx')

Anschließend können Sie mit der tables-Methode alle Tabellen im Dokument abrufen :

tables = doc.tables

Sie können jetzt auf einzelne Tabellenzellen und ihre Werte zugreifen. Dazu müssen Sie die Zeilen- und Spaltenindizes angeben:

table = tables[0] # получение первой таблицыfor row in table.rows:for cell in row.cells:value = cell.textprint(value)

In diesem Beispiel durchlaufen wir alle Zeilen und Spalten der Tabelle und geben ihre Werte aus. Sie können auch auf eine bestimmte Tabellenzelle zugreifen, indem Sie ihren Index angeben:

cell = table.cell(0, 0) # получение ячейки с индексами (строка, столбец)value = cell.textprint(value)

Nachdem die Tabelle nun erfolgreich aus der Docx-Datei gelesen wurde, können Sie ihre Werte nach Belieben verwenden: daten in eine Excel-Datei speichern, Daten analysieren usw.

Konvertieren von Daten in das Excel-Format

Um diese Aufgabe in Python auszuführen, können wir verschiedene Bibliotheken verwenden, wie zum Beispiel python-docx zum Lesen von Daten aus Docx-Dateien und pandas zum Erstellen und Speichern von Tabellen im Excel-Format.

Die Schritte zum Konvertieren einer Docx-Tabelle in Excel umfassen:

  1. Installieren Sie die erforderlichen Bibliotheken wie Python-docx und Pandas.
  2. Lesen Sie Daten aus einer Docx-Datei mit der Python-docx-Bibliothek und speichern Sie sie als Liste oder Tabelle im Speicher.
  3. Erstellen einer Tabelle oder eines Dataframes mithilfe der Pandas-Bibliothek basierend auf den erhaltenen Daten.
  4. Speichert eine Tabelle oder einen Dataframe im Excel-Format mit der Funktion to_excel() der Pandas-Bibliothek.

Durch die Verwendung von Python-Code zum Ausführen dieser Schritte können Sie die Konvertierung einer Tabelle aus dem Docx-Format in das Excel-Format einfach automatisieren. Dieser Ansatz kann nützlich sein, wenn Sie mit großen Datenmengen arbeiten oder sich wiederholende Aufgaben in der Datenanalyse ausführen.

Mithilfe von Datencode und Anweisungen können Sie Tabellen erfolgreich aus dem Docx-Format in das Excel-Format konvertieren und in einer für Sie geeigneten Weise verarbeiten.

Denken Sie daran, die Originaldateien zu speichern und auf die Formatierung der Tabelle in Docx zu achten, damit die Daten nach der Konvertierung in Excel strukturiert und verständlich bleiben.

Anpassen des Tabellenformats in Excel

Sie müssen die openpyxl-Bibliothek verwenden, um den Tabellenstil in Excel anzupassen. Mit dieser Bibliothek können Sie Excel-Dateien erstellen und bearbeiten sowie Zellen- und Tabellenstile festlegen.

Beispielcode zum Anpassen eines Tabellenformats in Excel mithilfe der openpyxl-Bibliothek:

from openpyxl import Workbookfrom openpyxl.styles import Font, Color# Создание нового файла Excelwb = Workbook()ws = wb.active# Установка стиля ячейкиcell = ws['A1']cell.value = "Пример"cell.font = Font(color=Color(rgb="FFFF0000"), bold=True)# Сохранение файлаwb.save("example.xlsx")

In diesem Beispiel erstellen wir eine neue Excel-Datei, legen den Wert und den Stil für Zelle A1 fest und speichern die Datei unter dem Namen "example".xlsx". In diesem Fall setzen wir die Schriftfarbe rot und die Markierung fett für Zelle A1.

Sie können die Stile verschiedener Zellattribute anpassen, z. B. Schriftgröße, Textausrichtung, Zellfüllung und andere. Dazu müssen Sie die entsprechenden Klassen und Methoden der openpyxl-Bibliothek verwenden.

Wenn Sie den Tabellenstil in Excel mit Python anpassen, können Sie professionell gestaltete und informative Tabellen erstellen, die für die Datenanalyse und die Darstellung von Informationen nützlich sein können. Verwenden Sie die openpyxl-Bibliothek, um stilvolle und lesbare Excel-Dokumente basierend auf Daten aus einer DOCX-Datei zu erstellen.

Speichern einer Tabelle in einer neuen Excel-Datei

Nach der Konvertierung einer Tabelle aus einer Docx-Datei in Excel mit Python können Sie die resultierenden Daten in einer neuen Excel-Datei speichern.

Dazu benötigen Sie die Bibliothek `openpyxl', die Sie durch Ausführen des Befehls installieren können:

pip install openpyxl

Nachdem Sie die Bibliothek installiert haben, können Sie den folgenden Code verwenden, um die Tabelle in einer neuen Excel-Datei zu speichern:

from openpyxl import Workbook# Создание нового файла Excelworkbook = Workbook()# Выбор активного листаsheet = workbook.active# Запись данных в таблицуfor row in data:sheet.append(row)# Сохранение файлаworkbook.save("new_file.xlsx")

In diesem Beispiel erstellen wir eine neue Excel-Datei mit der Funktion `Workbook()` aus der Bibliothek `openpyxl`. Dann wählen wir das aktive Arbeitsblatt aus und schreiben die Daten mithilfe einer Schleife aus der Tabelle. Am Ende speichern wir die Datei mit der Funktion `save()` und geben den Namen der neuen Datei an, z. B. "new_file.xlsx".

Jetzt haben Sie eine neue Excel-Datei mit Daten aus einer Tabelle, die Sie nach Belieben öffnen und verwenden können.

Zusätzliche Funktionen und nützliche Beispiele

Das Konvertieren einer Tabelle aus dem Docx-Format in Excel mit Python bietet viele nützliche Funktionen. Im Folgenden finden Sie einige zusätzliche Funktionen und Codebeispiele:

1. Extrahieren von Daten aus mehreren Tabellen:

Sie können den Code ändern, um mehrere Tabellen gleichzeitig zu verarbeiten. Um dies zu tun, müssen Sie alle Tabellen im Dokument mit einer Schleife durchlaufen und jede Tabelle an die Funktion übergeben, die die Konvertierung durchführt.

import docx2txtdef extract_tables(file_path):text = docx2txt.process(file_path)tables = text.split("")for table in tables:convert_table_to_excel(table)

2. Ändern des Spaltenformats:

Standardmäßig werden alle Spalten in einer Excel-Tabelle als normaler Text gespeichert. Sie können jedoch das Spaltenformat so ändern, dass numerische Daten als Zahlen und Daten als Daten erkannt werden:

import openpyxlfrom openpyxl.utils.dataframe import dataframe_to_rowsdef convert_table_to_excel(table):# Преобразование таблицы в pandas DataFramedf = pd.read_html(table)[0]# Изменение формата столбцовfor column in df.columns:if df[column].dtype == 'int64':df[column] = df[column].astype('int')elif df[column].dtype == 'float64':df[column] = df[column].astype('float')elif df[column].dtype == 'object':try:df[column] = pd.to_datetime(df[column])except ValueError:continue# Создание и сохранение Excel-файлаexcel_file = 'output.xlsx'df.to_excel(excel_file, index=False)

3. Verwalten von Tabellenstilen:

Sie können Stile auf eine erstellte Tabelle in Excel anwenden, um sie ausgefüllter und übersichtlicher zu machen. Openpyxl bietet viele Optionen zum Verwalten von Stilen, z. B. das Ändern der Spaltenbreite, das Hinzufügen von Füllungen, das Anwenden von Rändern und vieles mehr:

from openpyxl.styles import Font, Color, Alignment, Border, Sidedef apply_table_styles(worksheet, num_columns):# Изменение ширины столбцовfor i in range(num_columns):worksheet.column_dimensions[openpyxl.utils.get_column_letter(i+1)].width = 15# Задание заливки для заголовков таблицыheader_fill = PatternFill(start_color="FFFF00", end_color="FFFF00", fill_type="solid")header_font = Font(bold=True, color=Color(rgb="FFFFFF"))header_alignment = Alignment(horizontal="center", vertical="center")for cell in worksheet[1]:cell.fill = header_fillcell.font = header_fontcell.alignment = header_alignment# Применение границ к таблицеthin_border = Border(left=Side(style="thin"), right=Side(style="thin"), top=Side(style="thin"), bottom=Side(style="thin"))for row in worksheet.iter_rows():for cell in row:cell.border = thin_border

4. Erstellen mehrerer Excel-Arbeitsblätter:

Sie können auch mehrere Excel-Arbeitsblätter mit openpyxl erstellen. Dazu müssen Sie eine Instanz der Workbook-Klasse erstellen, Arbeitsblätter hinzufügen und die Datei im gewünschten Format speichern:

from openpyxl import Workbookdef convert_table_to_excel(table):# Преобразование таблицы в pandas DataFramedf = pd.read_html(table)[0]# Создание экземпляра Workbookworkbook = Workbook()# Создание нового листаsheet = workbook.active# Заполнение листа данными таблицыfor row in dataframe_to_rows(df, index=False, header=True):sheet.append(row)# Создание второго листаsecond_sheet = workbook.create_sheet(title="Second Sheet")# Заполнение второго листа данными таблицыfor row in dataframe_to_rows(df, index=False, header=True):second_sheet.append(row)# Применение стилей к таблицеapply_table_styles(sheet, df.shape[1])apply_table_styles(second_sheet, df.shape[1])# Сохранение файлаexcel_file = 'output.xlsx'workbook.save(excel_file)

Dies sind nur einige der Funktionen, die Python bietet, um eine Tabelle von Docx nach Excel zu konvertieren. Sie können mit dem Code experimentieren und ihn an Ihre Bedürfnisse anpassen.