Initial commit - Stand 26.04.2026
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
import openpyxl
|
||||
from datetime import datetime
|
||||
|
||||
EXCEL_FILE = r"C:\Users\renet\.openclaw\workspace\buchhaltungs-app\Schulden Kerstin.xlsx"
|
||||
|
||||
print(f"Lade: {EXCEL_FILE}")
|
||||
wb = openpyxl.load_workbook(EXCEL_FILE, data_only=True)
|
||||
ws = wb['Tabelle2']
|
||||
|
||||
print(f"\nSheet: {ws.title}")
|
||||
print(f"Zeilen: {ws.max_row}, Spalten: {ws.max_column}")
|
||||
print("\n" + "="*100)
|
||||
print("ALLE ZEILEN MIT INHALT:")
|
||||
print("="*100)
|
||||
|
||||
zahlungen = []
|
||||
for row_idx in range(1, min(ws.max_row + 1, 150)):
|
||||
row = [ws.cell(row=row_idx, column=c).value for c in range(1, 4)]
|
||||
|
||||
datum = row[0] if isinstance(row[0], datetime) else None
|
||||
notiz = row[1] if row[1] else None
|
||||
betrag = row[2] if isinstance(row[2], (int, float)) else None
|
||||
|
||||
if betrag is not None:
|
||||
print(f"Zeile {row_idx}: Datum={datum}, Notiz={notiz}, Betrag={betrag}")
|
||||
zahlungen.append({
|
||||
'zeile': row_idx,
|
||||
'datum': datum,
|
||||
'notiz': notiz,
|
||||
'betrag': betrag
|
||||
})
|
||||
|
||||
print(f"\n{'='*100}")
|
||||
print(f"INSGESAMT: {len(zahlungen)} Einträge mit Betrag")
|
||||
print(f"{'='*100}")
|
||||
|
||||
# Gruppiere nach Jahr
|
||||
by_year = {}
|
||||
for z in zahlungen:
|
||||
if z['datum']:
|
||||
year = z['datum'].year
|
||||
by_year[year] = by_year.get(year, 0) + 1
|
||||
|
||||
print("\nNach Jahr:")
|
||||
for year, count in sorted(by_year.items()):
|
||||
print(f" {year}: {count} Einträge")
|
||||
|
||||
print("\nOhne Datum:")
|
||||
ohne_datum = [z for z in zahlungen if z['datum'] is None]
|
||||
for z in ohne_datum:
|
||||
print(f" Zeile {z['zeile']}: {z['notiz']} - {z['betrag']}€")
|
||||
Reference in New Issue
Block a user