Was macht excel-agent-skills?
Bietet 25 Excel-Operationen mit openpyxl ohne Excel. Unterstützt vollständige Server- oder minimale Befehlszeilenausführung für flexible Automatisierung.
Übersicht
Dieses Skill-Paket ermöglicht die Durchführung von 25 gängigen Excel-Operationen unter Verwendung von openpyxl. Es erfordert keine Installation von Microsoft Excel und kann sowohl als vollwertiger Server als auch als einfaches Befehlszeilentool ausgeführt werden. Ideal für die Integration in KI-Agenten (z. B. Claude Code, Cursor, Codex) zur automatisierten Verarbeitung von Excel-Dateien.
Funktionen
- 25 Excel-Operationen – deckt typische Aufgaben ab: Arbeitsblätter erstellen/löschen, Zellen lesen/schreiben, Zellformatierung, Diagramme einfügen, Formeln verwenden, etc.
- Keine Abhängigkeit von Excel – nutzt
openpyxl, eine reine Python-Bibliothek. - Flexibler Betrieb – wahlweise als HTTP-Server (REST-API) oder als CLI-Tool.
- Plattformunabhängig – läuft auf Windows, macOS und Linux.
Voraussetzungen
- Python 3.8 oder höher
openpyxlinstalliert (siehe Installation)
Installation
pip install openpyxl
Klone das Repository und installiere ggf. weitere Abhängigkeiten:
git clone https://github.com/Likaxy/excel-agent-skills.git
cd excel-agent-skills
pip install -r requirements.txt
Verwendung
Server-Modus
Starte den Server:
python server.py
Der Server läuft standardmäßig auf Port 5000. Sende HTTP-Anfragen, z. B.:
curl -X POST http://localhost:5000/execute -H "Content-Type: application/json" -d '{"operation": "create_workbook", "params": {"filename": "test.xlsx"}}'
CLI-Modus
Führe Operationen direkt über die Kommandozeile aus:
python excel_cli.py --operation create_workbook --params filename=test.xlsx
Verfügbare Operationen
| Operation | Beschreibung |
|---|---|
| create_workbook | Erstellt eine neue Arbeitsmappe |
| load_workbook | Lädt eine vorhandene Arbeitsmappe |
| save_workbook | Speichert die Arbeitsmappe |
| add_sheet | Fügt ein neues Arbeitsblatt hinzu |
| remove_sheet | Entfernt ein Arbeitsblatt |
| rename_sheet | Benennt ein Arbeitsblatt um |
| write_cell | Schreibt einen Wert in eine bestimmte Zelle |
| read_cell | Liest den Wert einer Zelle |
| write_range | Schreibt Daten in einen Zellbereich |
| read_range | Liest Daten aus einem Zellbereich |
| delete_row | Löscht eine Zeile |
| delete_column | Löscht eine Spalte |
| insert_row | Fügt eine Zeile ein |
| insert_column | Fügt eine Spalte ein |
| merge_cells | Verbindet Zellen |
| unmerge_cells | Trennt verbundene Zellen |
| set_cell_format | Legt die Formatierung einer Zelle fest (z. B. Schrift, Farbe, Rahmen) |
| set_row_height | Setzt die Höhe einer Zeile |
| set_column_width | Setzt die Breite einer Spalte |
| add_chart | Fügt ein Diagramm ein |
| add_formula | Fügt eine Formel ein |
| set_data_validation | Definiert Datenvalidierung für Zellen |
| autofilter | Wendet einen Autofilter auf einen Bereich an |
| pivot_table | Erstellt eine Pivot-Tabelle |
| protect_sheet | Schützt ein Arbeitsblatt mit einem Passwort |
Beispiele
Beispiel 1: Arbeitsmappe erstellen und Werte schreiben
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws['A1'] = 'Hallo'
ws['B1'] = 'Welt'
wb.save('beispiel.xlsx')
Beispiel 2: Über den Server ein Diagramm hinzufügen
curl -X POST http://localhost:5000/execute \
-H "Content-Type: application/json" \
-d '{"operation": "add_chart", "params": {"filename": "chart.xlsx", "chart_type": "bar", "data_range": "A1:B10"}}'
Fehlerbehandlung
Bei Fehlern werden aussagekräftige Meldungen zurückgegeben. Der Server gibt HTTP-Statuscodes wie 400 (ungültige Anfrage) oder 500 (interner Serverfehler) zurück. Im CLI-Modus erscheint die Fehlermeldung auf der Standardfehlerausgabe.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe die Datei LICENSE für Details.
Beiträge
Beiträge sind willkommen! Bitte erstelle einen Pull-Request oder ein Issue auf GitHub.