Initial commit - Stand 26.04.2026

This commit is contained in:
OpenClaw
2026-04-26 07:51:39 +02:00
commit b29c467187
186 changed files with 39281 additions and 0 deletions
+85
View File
@@ -0,0 +1,85 @@
import openpyxl
file_path = 'Kopie von Kostenrechnung der Nächsten jahre (3).xlsx'
wb = openpyxl.load_workbook(file_path, data_only=True)
sheet = wb['Tilgung bei Gleichbleibenden Be']
print('=== ENDGÜLTIGE KREDIT-ANALYSE APRIL 2026 ===')
print()
# KREDIT 1: DSL Bank (Spalte 9)
dsl_rest = sheet.cell(189, 9).value
dsl_rate = sheet.cell(189, 10).value
print('KREDIT 1: DSL Bank')
print(f' Spalte: 9 (Restschuld), 10 (Rate)')
print(f' Restschuld Apr 2026: {dsl_rest:,.2f}' if dsl_rest else ' Restschuld: None')
print(f' Monatsrate: {dsl_rate}' if dsl_rate else ' Rate: None')
print()
# KREDIT 2: PSD Nord (Spalte 13)
psd_rest = sheet.cell(189, 13).value
psd_rate = sheet.cell(189, 14).value
print('KREDIT 2: PSD Nord')
print(f' Spalte: 13 (Restschuld), 14 (Rate)')
print(f' Restschuld Apr 2026: {psd_rest:,.2f}' if psd_rest else ' Restschuld: None')
print(f' Monatsrate: {psd_rate}' if psd_rate else ' Rate: None')
print()
# KREDIT 3: Zingelstr. 14 - Sparkasse (Spalten 20, 21, 28)
print('=== ZINGELSTR. 14 ANAYLSE ===')
print()
# Wie interpretieren wir die Daten?
# Option 1: Zingelstr. 14 = 1 Kredit, Sparkasse = Header
# Option 2: Zingelstr. 14 ist ein Überbegriff, Sparkasse und DSL sind 2 Kredite
zingel_rest = sheet.cell(189, 20).value
sparkasse_rate = sheet.cell(189, 21).value
sparkasse_zins = sheet.cell(189, 22).value
print('Spalte 20 (Zingelstr. 14):')
print(f' Restschuld: {zingel_rest:,.2f}' if zingel_rest else ' Restschuld: None')
print()
print('Spalte 21 (Sparkasse):')
print(f' Rate: {sparkasse_rate}')
print()
print('Spalte 28 (kein Header):')
val28 = sheet.cell(189, 28).value
print(f' Wert: {val28:,.2f}' if val28 else ' Wert: None')
print()
# PRÜFUNG: Ist Spalte 28 = Zingelstr.14 - Sparkasse Restschuld?
print('=== MATHEMATISCHE PRÜFUNG ===')
sum_check = (dsl_rest or 0) + (psd_rest or 0) + (zingel_rest or 0)
gesamt = sheet.cell(189, 24).value
print(f'DSL (9) + PSD (13) + Zingel (20) = {sum_check:,.2f}')
print(f'Gesamt (24) = {gesamt:,.2f}')
print(f'Differenz = {gesamt - sum_check:,.2f}')
# Zingelstr.14 + Spalte 28
sum_check2 = (dsl_rest or 0) + (psd_rest or 0) + (zingel_rest or 0) + (val28 or 0)
print(f'\\nDSL (9) + PSD (13) + Zingel (20) + Col28 = {sum_check2:,.2f}')
print(f'Das passt zu Gesamt (24)!' if abs(sum_check2 - gesamt) < 0.01 else f'Passt nicht: Differenz {sum_check2 - gesamt}')
print()
print('=== ERGEBNIS ===')
print('Es gibt 4 aktive Kredite im April 2026:')
print()
print('1. DSL Bank (Spalte 9)')
print(f' Restschuld: {dsl_rest:,.2f}')
print(f' Rate: {dsl_rate}')
print()
print('2. PSD Nord (Spalte 13)')
print(f' Restschuld: {psd_rest:,.2f}')
print(f' Rate: {psd_rate}')
print()
print('3. Zingelstr. 14 - DSL (Spalte 20) - oder Gesamt für Zingelstr?')
print(f' Restschuld: {zingel_rest:,.2f}')
print(f' Rate: unbekannt (nicht in Spalten 21/22)')
print()
print('4. Sparkasse (Spalte 28 - Restschuld, Spalte 21 - Rate)')
print(f' Restschuld: {val28:,.2f}')
print(f' Rate: {sparkasse_rate}')