Seite 1 von 2
[GELÖST] Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Sa, 04.06.2022 10:19
von MASP47
Hallo zusammen!
Ich habe folgendes Problem: Ich muss jeden Monat ca. 150 Rechnungen erstellen. Dafür habe ich bereits ein Makro das wunderbar funktioniert, aber ich würde das Erstellen der PDFs gerne automatisieren, so dass ich nur mehr auf einen Button klicken muss und alle Rechnungen erstellt werden. Jetzt mal die grundsätzliche Frage: Kann man das per Makro überhaupt programmieren (ich bin nicht so der Experte auf dem Gebiet ^^)?
Konkret müsste folgendes automatisiert werden: In einer Zelle greife ich per Auswahlliste auf die Rechnungsnummern zu. Zu jeder Rechnungsnummer erscheint dann die entsprechende Rechnung mit den dazugehörigen Positionen. Dann klicke ich auf den Button zur Rechnungserstellung. That's it. Ich möchte also per Makro dieser Zelle nacheinander alle Rechnungsnummern zuordnen und bei jeder das Makro zur Erstellung des PDFs laufen lassen. Ist das mit einer Schleife möglich? Ich hab schon sehr viel herumprobiert, aber mit mäßigem Erfolg, vor allem weiß ich nicht wie ich diese Schleife programmieren soll. Mein größter Erfolg bisher, die Zelle per Klcik auf einen Button um eins hochzählen lassen und die Rechnung erstellen, das hat zumindest schon mal die Anzahl der Klicks halbiert.. ^^ Aber ich würde das ganze Procedere gerne komplett automatisieren.
Kann mir hier jemand einen Tipp geben?

ich hoffe ich konnte mich einigermaßen verständlich ausdrücken!
Oh und das Forum ist echt spitze, hier hab ich schon sehr viel gelernt!
Danke schon mal und lieben Gruß,
Andi
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Sa, 04.06.2022 10:22
von Mondblatt24
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Sa, 04.06.2022 16:07
von MASP47
Ist das verboten? Ich habe mir nur erhofft, dadurch unterschiedlichere Antworten zu bekommen. Aber es tut mir leid, falls ich gegen etwas verstoßen haben sollte!
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Sa, 04.06.2022 16:26
von Mondblatt24
Hallo,
nein es ist nicht verboten, aber es wird zumindest erwartet, dass die Beiträge untereinander verlinkt werden.
Aus den Allgemeinen Hinweisen zur Forumsbenutzung
Crossposting nicht erwünscht, aber toleriert
sog. Crossposting bzw. Multiposting (
https://de.wikipedia.org/wiki/Multiposting#Multiposting) ist nicht gerne gesehen. Von demjenigen der es verwendet wird aber in jedem Fall erwartet das er das kenntlich macht, also einen LInk auf den jeweils anderen Post setzt, um zu verhindern das an der zweiten Stelle (also in einem anderen Forum) noch über die Lösung nachgedacht wird, wenn diese bereits hier geschrieben ist bzw. auch umgekehrt.
Erläuterungen zur Thematik siehe:
https://www.linux-tips-and-tricks.de/de ... ie-keiner/
Gruß
Peter
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Sa, 04.06.2022 16:31
von MASP47
Hallo!
Okay, danke für den Hinweis! Werd ich künftig beachten!
Es sind übrigens beide Foren echt spitze!

Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: So, 05.06.2022 13:06
von F3K Total
Moin,
wenn ich dich richtig verstanden habe, möchtest du alle Rechnungnummern, die du in einem Dropdown Feld wählen kannst, automatisch durchlaufen.
Ja, das geht, anbei eine kleine Beispieldatei, die folgendes Makro enthält:
Code: Alles auswählen
Sub Bills_Loop
oSheet = ThisComponent.Sheets.getbyName("Rechnung")
oCell = oSheet.getCellRangeByName("A2")
sFormula1 = oCell.Validation.Formula1
oRanges = ThisComponent.Sheets.getCellrangesbyName(sFormula1)
oRange = oRanges(0)
aData = oRange.FormulaArray
for each aRow in aData
oCell.formula = aRow(0)' hier wird der jeweile Wert in die Zelle A2 eingetragen
'hier kann jetzt das Makro zur Rechnungserstellung aufgerufen werden.
wait 10
next aRow
msgbox ("Fertig, alle Rechnungsnummern durchlaufen!",64,"Rechnungen durchlaufen")
End Sub
Viel Erfolg,
Gruß R
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 08:19
von MASP47
Hallo,
vielen Dank für deine Antwort und für dein Makro! Grundsätzlich ist das genau wonach ich suche! Was ich daran nicht ganz verstehe ist wie du auf die Nummern im Blatt Rechnungen zugreifst? Das ist im Codes nicht ersichtlich für mich.
Ich bin selbst auch schon zu einem Lösungsansatz gekommen, der allerdings nicht so elegant ist wie deiner. ^^ Und ein Problem, das sich noch ergibt, ist das Fenster, das beim PDF erstellen aufpop und das man mit OK bestätigen muss. Kann man das unterdrücken bzw. kann man die Bestätigung noch irgendwie im Makro einbauen?
Veilen Dank schon mal!
Und lieben Gruß,
Andi
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 08:36
von MASP47
Ahh das mit den Nummern hab ich schon verstanden, es wird direkt über den Gültigkeitsbereich der Zelle zugegriffen! Danke, das funktioniert super.
Allerdings bleibt das Problem mit dem Fenster beim PDF Export.
Und wie kann man Leere Zellen überspringen und das Makro nach der letzten Nummer anhalten?
Vielen Dank im Voraus!
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 09:25
von MASP47
Schon wieder ich ^^
Das mit den leeren Zellen hab ich mittlerweile auch schon geschafft und das Makro hält danach ohnehin an - es ist also schon fast perfekt!
Jetzt müsste ich es nur noch schaffen, das Problem mit dem Fenster zu lösen. Das ist übrigens das Fenster "Eigenschaften" das man bei jedem PDF mit ok bestätgien muss.
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 11:21
von Karolus
Hallo
Ich denke du solltest das ganze mit einem Serien-druck-Dokument in Writer erschlagen!
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 11:41
von F3K Total
Moin,
die Idee von Karolus halte ich auch für gut.
Allerdings ist es mit einem Serienbrief beim Drucken von Rechnungen oft schwierig, unterschiedliche Anzahlen von Rechnungspositionen zu verarbeiten.
Es hängt also davon ab, was in deinen Rechnungen aufgeführt werden soll.
Wenn du dein gesamtes Dokument, ggf. verfremdet, hier hochladen würdest, könnte man dir sicherlich besser helfen.
Man kann .pdf Dateien auch ohne aufpoppenden Dialog exportieren.
Gruß R
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 12:00
von MASP47
Hey,
danke für eure Rückmeldungen!
Das mit dem Serienbrief ist eine gute Idee, aber in meinem Fall wohl nicht gut durchführbar. Pro Abrechnung müssen tausende Positionen den unterschiedlichen Rechnungen zugewiesen werden. Die Daten dafür liefern zwei CSV Dateien, die mit der Abrechnungsdatei verknüpft sind und es funktioniert perfekt!
Ich bin eigentlich fast am Ziel, auch dank deines kleinen Makros - danke noch mal!

Das einzige Problem ist noch der aufpoppende Eigenschaften Dialog, ansonsten entspricht die Datei schon komplett meinen Vorstellungen! Drum möchte ich lieber dahingehend noch alles probieren, ehe ich mit was ganz anderem von vorne beginnen muss.
Oh und danke für das Angebot das Dokument hochzuladen! Das Problem ist, dass hier sehr viele sensible Daten verarbeitet werden, die ich nicht alle unkenntlich machen kann.
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 12:35
von jasch
Hallo Andi,
Dokument hochzuladen! Das Problem ist, dass hier sehr viele sensible Daten verarbeitet werden, die ich nicht alle unkenntlich machen kann.
Hier schreibt Gast Peter wie das in einem Rutsch machbar ist:
http://www.oooforum.de/viewtopic.php?p= ... b7#p272806
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 12:50
von mikeleb
Hallo,
Das einzige Problem ist noch der aufpoppende Eigenschaften Dialog
Wie sieht denn dein Makro zum pdf-Export aus? Ich vermute mal, dass es auf den Dispatcher zugreift (aus einer Makroaufzeichnung?). Um dies zu ändern müsste man wissen, was konkret als pdf exportiert werden soll.
Re: Makro Schleife zur automatischen Rechnungs Erstellung
Verfasst: Mo, 06.06.2022 12:59
von MASP47
Hallo Jasch,
danke für den Tipp!
Ggf werde ich das machen, aber vielleicht schaff ich es davor noch, das Aufpoppen des Eigenschaften Dialogs zu verhindern. R meinte ja, dass das möglich ist.
LG Andi