75 lines
3.2 KiB
Python
75 lines
3.2 KiB
Python
import openpyxl
|
|
from datetime import datetime
|
|
|
|
datei = "Kopie von Kostenrechnung der Nächsten jahre (3).xlsx"
|
|
wb = openpyxl.load_workbook(datei, data_only=True)
|
|
ws = wb["Tilgung bei Gleichbleibenden Be"]
|
|
|
|
# Prüfe DSL Bank (Spalte 9) - die ersten und letzten 10 Einträge
|
|
print("=== DSL BANK (Spalte 9) ===")
|
|
print("Erste 10 Einträge:")
|
|
for row_idx in range(3, 13):
|
|
datum = ws.cell(row=row_idx, column=1).value
|
|
rest = ws.cell(row=row_idx, column=9).value
|
|
tilg = ws.cell(row=row_idx, column=10).value
|
|
zins = ws.cell(row=row_idx, column=11).value
|
|
print(f" Zeile {row_idx}: Datum={datum}, Rest={rest}, Tilg={tilg}, Zins={zins}")
|
|
|
|
print("\nLetzte 10 Einträge:")
|
|
for row_idx in range(ws.max_row-10, ws.max_row+1):
|
|
datum = ws.cell(row=row_idx, column=1).value
|
|
rest = ws.cell(row=row_idx, column=9).value
|
|
tilg = ws.cell(row=row_idx, column=10).value
|
|
zins = ws.cell(row=row_idx, column=11).value
|
|
if rest is not None:
|
|
print(f" Zeile {row_idx}: Datum={datum}, Rest={rest}, Tilg={tilg}, Zins={zins}")
|
|
|
|
# Prüfe Zingelstr. 14 (Spalte 20)
|
|
print("\n=== ZINGELSTR. 14 (Spalte 20) ===")
|
|
print("Erste 10 Einträge:")
|
|
for row_idx in range(3, 13):
|
|
datum = ws.cell(row=row_idx, column=1).value
|
|
rest = ws.cell(row=row_idx, column=20).value
|
|
rate = ws.cell(row=row_idx, column=21).value
|
|
zins = ws.cell(row=row_idx, column=22).value
|
|
print(f" Zeile {row_idx}: Datum={datum}, Rest={rest}, Rate={rate}, Zins={zins}")
|
|
|
|
print("\nLetzte 10 Einträge:")
|
|
for row_idx in range(ws.max_row-10, ws.max_row+1):
|
|
datum = ws.cell(row=row_idx, column=1).value
|
|
rest = ws.cell(row=row_idx, column=20).value
|
|
rate = ws.cell(row=row_idx, column=21).value
|
|
zins = ws.cell(row=row_idx, column=22).value
|
|
if rest is not None:
|
|
print(f" Zeile {row_idx}: Datum={datum}, Rest={rest}, Rate={rate}, Zins={zins}")
|
|
|
|
# Suche nach aktuellem Datum (2026)
|
|
print("\n=== SUCHE NACH 2024-2026 ===")
|
|
for row_idx in range(3, ws.max_row+1):
|
|
datum = ws.cell(row=row_idx, column=1).value
|
|
if datum and isinstance(datum, datetime):
|
|
if datum.year >= 2024:
|
|
rest_dsl = ws.cell(row=row_idx, column=9).value
|
|
rest_psd = ws.cell(row=row_idx, column=13).value
|
|
rest_zing = ws.cell(row=row_idx, column=20).value
|
|
print(f"{datum.strftime('%Y-%m')}: DSL={rest_dsl}, PSD={rest_psd}, Zing={rest_zing}")
|
|
if datum.year >= 2026 and datum.month >= 4:
|
|
break
|
|
|
|
# Finde Sparkasse - suchen in allen Zeilen nach "Sparkasse"
|
|
print("\n=== SUCHE SPARKASSE ===")
|
|
for row_idx in range(1, min(ws.max_row+1, 50)):
|
|
for col_idx in range(1, 50):
|
|
cell = ws.cell(row=row_idx, column=col_idx).value
|
|
if cell and isinstance(cell, str) and "sparkasse" in cell.lower():
|
|
print(f" Gefunden in Zeile {row_idx}, Spalte {col_idx}: '{cell}'")
|
|
|
|
# Suche PVCreditplus
|
|
print("\n=== SUCHE PVCreditplus ===")
|
|
for row_idx in range(1, min(ws.max_row+1, 50)):
|
|
for col_idx in range(1, 50):
|
|
cell = ws.cell(row=row_idx, column=col_idx).value
|
|
if cell and isinstance(cell, str):
|
|
if "credit" in cell.lower() or "pvc" in cell.lower():
|
|
print(f" Gefunden in Zeile {row_idx}, Spalte {col_idx}: '{cell}'")
|