Ladelog als PDF für Abrechnung mit Arbeitgeber?
- mrinas
- Beiträge: 2179
- Registriert: Mi Jan 29, 2020 10:12 pm
- Has thanked: 11 times
- Been thanked: 14 times
Monatsgraph passt nicht
Falls andere auch darüber gestoplert sind, die Energiemengen im Graphen zur Monatsauswertung passen bei mir so gar nicht: https://github.com/openWB/core/issues/663
15,2kWp SMA (SB4000TL-21, SB3.0, STP6.0-SE + BYD HVS, EnergyMeter), openWB Standard+, openWB Pro, Smart #1 (ersetzt den e2008), Tesla Model Y LR.
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Vielleicht hilft das ja
viewtopic.php?f=10&t=6243
viewtopic.php?f=10&t=6243
-
- Beiträge: 3535
- Registriert: Sa Feb 20, 2021 9:55 am
- Has thanked: 7 times
- Been thanked: 73 times
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Hier mal der Link zum klicken: viewtopic.php?f=10&t=6243
openWB-series2, openWB-Buchse, E3/DC S10pro+19.5kWh, 30kWp Ost-Süd, Model 3 und Ion
-
- Beiträge: 4
- Registriert: Di Nov 21, 2023 12:32 pm
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Ist hier jemand schon mal weitergekommen?
Die Abrechnung muss ich monatlich beim Arbeitgeber einreichen und es wäre schön, wenn es relativ automatisiert geht.
Denkbar ist natürlich sich den Rahmen in Excel zu bauen und nach einem Import der CSV die Daten in den richtigen Bereich einzufügen. Geht, ist aber doch jedes mal manuelle Arbeit.
Das Ausdrucken der Webseite als PDF ist auch möglich, aber man ein paar Randdaten wären noch schöner. Zum Beispiel ist die Nennung des aktuellen Stromtarifs nicht verkehrt.
Die Variante mit dem Python Script habe ich auch gesehen, aber extra dafür sich da komplett einzuarbeiten und ggf. einen Raspi zu kaufen ist auch irgendwie unschön.
Aktuell sieht es damit für mich nach der manuellen Excel Bearbeitung aus. Aber ggf. hat ja jemand mal mit VBA was schickeres gebaut?!?
Die Abrechnung muss ich monatlich beim Arbeitgeber einreichen und es wäre schön, wenn es relativ automatisiert geht.
Denkbar ist natürlich sich den Rahmen in Excel zu bauen und nach einem Import der CSV die Daten in den richtigen Bereich einzufügen. Geht, ist aber doch jedes mal manuelle Arbeit.
Das Ausdrucken der Webseite als PDF ist auch möglich, aber man ein paar Randdaten wären noch schöner. Zum Beispiel ist die Nennung des aktuellen Stromtarifs nicht verkehrt.
Die Variante mit dem Python Script habe ich auch gesehen, aber extra dafür sich da komplett einzuarbeiten und ggf. einen Raspi zu kaufen ist auch irgendwie unschön.
Aktuell sieht es damit für mich nach der manuellen Excel Bearbeitung aus. Aber ggf. hat ja jemand mal mit VBA was schickeres gebaut?!?
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Hallo Zusammen,
ich habe mir eine Lösung über PowerQuery gebastelt die Großteils automatisiert funktioniert.
Das Prinzip funktioniert wie folgt:
Ich muss händisch jeden Monat die CSV Datei des Abrechnungsmonats herunterladen und in meinen "Hot Folder" ablegen.
Dort habe ich eine xlsm-Datei bei deren Start wird automatisch die CSV Datei eingelesen, Formatierungen (Datum, Währung) und überschüssige Spalten entfernt und auf dem jeweiligen Kalendermonat übertragen.
Im Kopfbereich werden händisch die Benutzerdaten Name , KFZ-Kennzeichen, Strompreis gehegt.
Da ich noch eine Aufwandsentschädigung für meine Private WB bekomme, steht der Einfachheit die Gesamtsumme im Kopf.
Per VBA Makro erstelle ich eine PDF, öffne Outlock und bereite Empfänger, Betreff und Inhalt der Mail per Standardinhalt vor.
Mit dieser Lösung bin ich für ein Script Kiddy ganz zufrieden.
Was noch besser wäre wenn ich den Download der CSV, anpassen der Spaltenbreite und Auslösung des VBA Scripts automatisiert bekäme.
Wenn ich mal Zeit finde versuche ich das mithilfe von Power Bi noch weiter auszuwerten, evtl. findet sich ja jemand der da schon einen Ansatz verfolgt.
Gruß Py
ich habe mir eine Lösung über PowerQuery gebastelt die Großteils automatisiert funktioniert.
Das Prinzip funktioniert wie folgt:
Ich muss händisch jeden Monat die CSV Datei des Abrechnungsmonats herunterladen und in meinen "Hot Folder" ablegen.
Dort habe ich eine xlsm-Datei bei deren Start wird automatisch die CSV Datei eingelesen, Formatierungen (Datum, Währung) und überschüssige Spalten entfernt und auf dem jeweiligen Kalendermonat übertragen.
Im Kopfbereich werden händisch die Benutzerdaten Name , KFZ-Kennzeichen, Strompreis gehegt.
Da ich noch eine Aufwandsentschädigung für meine Private WB bekomme, steht der Einfachheit die Gesamtsumme im Kopf.
Per VBA Makro erstelle ich eine PDF, öffne Outlock und bereite Empfänger, Betreff und Inhalt der Mail per Standardinhalt vor.
Code: Alles auswählen
Sub ExportAndEmailActiveSheet()
Dim strPath As String
Dim strFileName As String
Dim outlookApp As Object
Dim outlookMail As Object
' Pfadeinstellung anpassen (zum Desktop des aktuellen Benutzers)
strPath = Environ("USERPROFILE") & "\Desktop\"
' Dateiname basierend auf dem Namen des aktiven Tabellenblatts
strFileName = strPath & ActiveSheet.Name & ".pdf"
' Tabellenblatt als PDF exportieren
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
' Outlook-Verbindung herstellen
Set outlookApp = CreateObject("Outlook.Application")
Set outlookMail = outlookApp.CreateItem(0)
' E-Mail-Einstellungen festlegen
With outlookMail
.To = "max.mustermann@geht.dich.nix.an.de" ' Hier die gewünschte E-Mail-Adresse eintragen
.Subject = "Abrechnung WB Mustermann 2024 " & ActiveSheet.Name
.Body = "Guten Tag xxx" & Chr(13) & _
"anbei die Abrechnung der Wb vom letzten Monat." & Chr(13) & Chr(13) & _
"Mit freundlichen Grüßen" & Chr(13)
.Attachments.Add strFileName
.Display ' Zum Anzeigen der E-Mail vor dem Senden
' .Send ' Zum automatischen Senden der E-Mail
End With
' Aufräumen
Set outlookMail = Nothing
Set outlookApp = Nothing
End Sub
Was noch besser wäre wenn ich den Download der CSV, anpassen der Spaltenbreite und Auslösung des VBA Scripts automatisiert bekäme.
Wenn ich mal Zeit finde versuche ich das mithilfe von Power Bi noch weiter auszuwerten, evtl. findet sich ja jemand der da schon einen Ansatz verfolgt.
Gruß Py
-
- Beiträge: 303
- Registriert: Do Dez 03, 2020 4:10 pm
- Has thanked: 26 times
- Been thanked: 4 times
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Ich habe mir das angesehen, leider scheitere ich an dem PowerQuery, das überfordert mich.PyvanPyro hat geschrieben: ↑Do Mai 16, 2024 11:00 am Hallo Zusammen,
ich habe mir eine Lösung über PowerQuery gebastelt die Großteils automatisiert funktioniert.
Das Prinzip funktioniert wie folgt:
Ich muss händisch jeden Monat die CSV Datei des Abrechnungsmonats herunterladen und in meinen "Hot Folder" ablegen.
Dort habe ich eine xlsm-Datei bei deren Start wird automatisch die CSV Datei eingelesen, Formatierungen (Datum, Währung) und überschüssige Spalten entfernt und auf dem jeweiligen Kalendermonat übertragen.
2.PNG
1.PNG
Im Kopfbereich werden händisch die Benutzerdaten Name , KFZ-Kennzeichen, Strompreis gehegt.
Da ich noch eine Aufwandsentschädigung für meine Private WB bekomme, steht der Einfachheit die Gesamtsumme im Kopf.
Per VBA Makro erstelle ich eine PDF, öffne Outlock und bereite Empfänger, Betreff und Inhalt der Mail per Standardinhalt vor.
Mit dieser Lösung bin ich für ein Script Kiddy ganz zufrieden.Code: Alles auswählen
Sub ExportAndEmailActiveSheet() Dim strPath As String Dim strFileName As String Dim outlookApp As Object Dim outlookMail As Object ' Pfadeinstellung anpassen (zum Desktop des aktuellen Benutzers) strPath = Environ("USERPROFILE") & "\Desktop\" ' Dateiname basierend auf dem Namen des aktiven Tabellenblatts strFileName = strPath & ActiveSheet.Name & ".pdf" ' Tabellenblatt als PDF exportieren ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False ' Outlook-Verbindung herstellen Set outlookApp = CreateObject("Outlook.Application") Set outlookMail = outlookApp.CreateItem(0) ' E-Mail-Einstellungen festlegen With outlookMail .To = "max.mustermann@geht.dich.nix.an.de" ' Hier die gewünschte E-Mail-Adresse eintragen .Subject = "Abrechnung WB Mustermann 2024 " & ActiveSheet.Name .Body = "Guten Tag xxx" & Chr(13) & _ "anbei die Abrechnung der Wb vom letzten Monat." & Chr(13) & Chr(13) & _ "Mit freundlichen Grüßen" & Chr(13) .Attachments.Add strFileName .Display ' Zum Anzeigen der E-Mail vor dem Senden ' .Send ' Zum automatischen Senden der E-Mail End With ' Aufräumen Set outlookMail = Nothing Set outlookApp = Nothing End Sub
Was noch besser wäre wenn ich den Download der CSV, anpassen der Spaltenbreite und Auslösung des VBA Scripts automatisiert bekäme.
Wenn ich mal Zeit finde versuche ich das mithilfe von Power Bi noch weiter auszuwerten, evtl. findet sich ja jemand der da schon einen Ansatz verfolgt.
Gruß Py
Gibt es hier eine Lösung in Richtung Plug&Play?
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Hey,
mit Boardmitteln nicht, müsste mal schauen ob man die Datei so teilen kann das es einfacher geht.
mit Boardmitteln nicht, müsste mal schauen ob man die Datei so teilen kann das es einfacher geht.
-
- Beiträge: 303
- Registriert: Do Dez 03, 2020 4:10 pm
- Has thanked: 26 times
- Been thanked: 4 times
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Ich habe es soweit hinbekommen mit powerquery. Ich habe eine Tabelle/Reiter mit meiner schönen Form, Titelleiste, etc.
Dann eine weitere Tabelle in die ich meine CSV-Datei ziehe bzw. automatisch aktualisiere. Das klappt soweit super.
Allerdings: Meine schöne Tabelle (Abrechnung) habe ich mit Bezug =Blatt_Import_Zelle_A1 , ....gestaltet. Das klappt. Sobald aber die andere Tabelle aktualisiert wird, passt das ganze nicht mehr. Dann ist die Zweite Zeile nicht mehr auf Zelle A2, A3, ... referenziert, sondern auf A28. Vermutlich wegen längerer/neuer Zelle.
Eigentlich hätte ich erwartet, dass einfach die erste Zeile im Abrechnungblatt FIX auf der ersten Zeile im Importblatt bleibt usw.
Was mache ich falsch?
-
- Beiträge: 303
- Registriert: Do Dez 03, 2020 4:10 pm
- Has thanked: 26 times
- Been thanked: 4 times
Re: Ladelog als PDF für Abrechnung mit Arbeitgeber?
Gefunden, recht versteht: Bei Eigenschaften gibt es Auswahlmöglichkeiten bei "Wenn sich die Anzahl der Zeilen im Datenbereich bei der Aktualisierung ändert:"
Vorher: Zellen für neue Daten einfügen, nicht verwendete Zeilen löschen
Jetzt: Bestehende Zellinhalte überschreibne, nicht verwendete Zellen löschen
Klappt soweit.
Nun ist nur mein Problem, dass überflüssige Zeilen/Zellen im Abrechnungsblatt mit 00.01.1900 angezeigt werden. Manuelles löschen ist Fehleranfällig, da ich die Zeilenzahl immer anpassen muss. Gibts da eine bessere Lösung?
Ja, gibt es:
=WENN('ChargeLog'!A2="";"";'ChargeLog'!A2)
Vorher: Zellen für neue Daten einfügen, nicht verwendete Zeilen löschen
Jetzt: Bestehende Zellinhalte überschreibne, nicht verwendete Zellen löschen
Klappt soweit.
Nun ist nur mein Problem, dass überflüssige Zeilen/Zellen im Abrechnungsblatt mit 00.01.1900 angezeigt werden. Manuelles löschen ist Fehleranfällig, da ich die Zeilenzahl immer anpassen muss. Gibts da eine bessere Lösung?
Ja, gibt es:
=WENN('ChargeLog'!A2="";"";'ChargeLog'!A2)