Hallo, vielleicht kann jemand mir bitte weiterhelfen - Danke! Habe eine Rechnungsvorlage erstellt - drei Register- Register Daten, Register Betrag und Register Vorlage. Die für die Rechnungsvorlage erforderlichen Daten habe ich mit s-verweis soweit erledigt. Mein Problem ist - wie bekomme ich die Daten aus dem Register Beträge in die Vorlage - getrennt nach Datensätzen.
Mit aktuellem Office kannst du per Filter() die Datensätze für die entsprechende Rechnungsnummer übernehmen. in A20: =FILTER(Betrag!B2:E5;Betrag!A2:A5=Vorlage!A10)
Die verbundenen Zellen müssen dafür raus. Zellbereiche in der Formel anpassen.
Ist es möglich, wenn z.B. die Vorlage "RNr. 1/2025" gedruckt wird gleichzeitig im Register "Daten" Zeile 2 in der Zelle N2 ein Hinweis z.B. "gedruckt" ausgegeben wird. Das sollte bei allen Rechnungsnummern der Fall sein.
es ist das erste mal das ich mich mit einem Druckauftrag beschäftige. Hoffentlich klappt es einwandfrei?? Bitte den Code in Moduk1 gegen diesen Code austauschen und Testen. Ich bin gespannt auf das Ergebnis.
Vor dem Drucken wird geprüft ob diese Rechnung existiert, und ob sie bereits gedruckt wurde?? Hinweis:muss der Range für den Druckbereich nicht bis -Spalte F- gehen?? Range("A1:F47") ??
mfg Gast 123
Code:
Sub DruckeBereich() Dim ReNr As Variant ReNr = Sheets("Vorlage").Range("A10")
'Prüfung ob diese Rechnung existiert? Set rfind = Sheets("Daten").Range("Tabelle2[[RNr.]]").Find(what:=ReNr) If rfind Is Nothing Then MsgBox "Diese Rechnung existiert nicht!", vbCritical: Exit Sub
'Prüfung ob diese Rechnung schon gedruckt wurde? If Sheets("Daten").Range("Tabelle2[[Print]]").Cells(rfind.Row - 1, 1) = "gedruckt" Then MsgBox "Diese Rechnung wurde bereits gedruckt!", vbInformation: Exit Sub End If
'** Range auf Spalte F erweitern?? Range("A1:E47").PrintOut Copies:=1
'Druckvermerk in Daten notieren Set rfind = Sheets("Daten").Range("Tabelle2[[RNr.]]").Find(what:=ReNr) Sheets("Daten").Range("Tabelle2[[Print]]").Cells(rfind.Row - 1, 1) = "gedruckt" End Sub
03.02.2025, 13:04 (Dieser Beitrag wurde zuletzt bearbeitet: 03.02.2025, 13:08 von Ubi5.)
Sub DruckeBereich() Dim ReNr As Variant ReNr = Sheets("Vorlage").Range("A10")
'Prüfung ob diese Rechnung existiert? Set rfind = Sheets("Daten").Range("Tabelle2[[RNr.]]").Find(what:=ReNr) If rfind Is Nothing Then MsgBox "Diese Rechnung existiert nicht!", vbCritical: Exit Sub
'Prüfung ob diese Rechnung schon gedruckt wurde? If Sheets("Daten").Range("Tabelle2[[Print]]").Cells(rfind.Row - 1, 1) = "gedruckt" Then MsgBox "Diese Rechnung wurde bereits gedruckt!", vbInformation: Exit Sub End If
'** Range auf Spalte F erweitern?? Range("A1:E47").PrintOut Copies:=1
'Druckvermerk in Daten notieren Set rfind = Sheets("Daten").Range("Tabelle2[[RNr.]]").Find(what:=ReNr) Sheets("Daten").Range("Tabelle2[[Print]]").Cells(rfind.Row - 1, 1) = "gedruckt" End Sub
Leider Fehlermeldung bei If ................................. Ja bis Spalte "F"
stimmt, vergaß ich dir mitzuteilen. Ich habe deine Intelligente Tabelle um 1 Spalte mit der Überschift "Print" erweitert! Du kannst auch "gedruckt" als Überschrift nehmen, dann musst du im Makro bitte "Print" durch "gedruckt" ersetzen. Ohne diese neue Spalte gibt es natürlich einen Laufzeitfehler.
Füge am Ende der Tabelle den Text "gedruckt" ein und gib der neuen Spalte deine Überschrift. Dann sollte es klappen. Die bereits gedruckten Rechnungen kannst du ja von Hand mit "gedruckt" versehen. Würde mich freuen wenn das Makro nach der Änderung einwandfrei funktioniert.