HERBERS Excel-Forum - die Beispiele

Thema: Spendenbescheinigungen als Serienbrief drucken

Home

Gruppe

Druck

Problem

An eine Adressliste sollen Spendenbescheinigungen gedruckt werden.

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.
StandardModule: Modul1

Sub Bescheinigung()
   Dim iRow As Integer
   iRow = 2
   With Worksheets("Adressen")
      Do Until IsEmpty(.Cells(iRow, 1))
         Range("A8:A11").ClearContents
         Range("A8").Value = .Cells(iRow, 2).Value & " " & .Cells(iRow, 1).Value
         Range("A9").Value = .Cells(iRow, 3).Value
         Range("A11").Value = .Cells(iRow, 4).Value & " " & .Cells(iRow, 5).Value
         Range("A28").Value = .Cells(iRow, 2).Value & " " & .Cells(iRow, 1).Value
         Range("A29").Value = .Cells(iRow, 3).Value
         Range("A30").Value = .Cells(iRow, 4).Value & " " & .Cells(iRow, 5).Value
         Range("A36").Value = "XXX " & .Cells(iRow, 6).Value & " DM /" & _
            ZahlWort(.Cells(iRow, 6).Value) & "/11.09.01 XXX"
         iRow = iRow + 1
         ActiveSheet.PrintPreview
      Loop
   End With
End Sub

StandardModule: Modul2

Function ZWort(dZahl As Double, Optional bln As Boolean)
   Dim dRest As Double
   dRest = WorksheetFunction.Round((dZahl - Fix(dZahl)), 2) * 100
   dZahl = Fix(dZahl)
   BisNeunzehn = Array("", "ein", "zwei", "drei", "vier", _
      "fünf", "sechs", "sieben", "acht", "neun", "zehn", _
      "elf", "zwölf", "dreizehn", "vierzehn", "fünfzehn", _
      "sechzehn", "siebzehn", "achtzehn", "neunzehn")
   Zehner = Array("", "zehn", "zwanzig", "dreißig", _
      "vierzig", "fünfzig", "sechzig", "siebzig", _
      "achtzig", "neunzig")
   Tausender = Array("", "tausend", "millionen", "milliarden")
   If dRest = 0 Then
      ZWort = Text(dZahl)
   Else
      If bln Then
         ZWort = Text(dZahl) & " " & dRest & "/00"
      Else
         ZWort = Text(dZahl)
      End If
   End If
End Function

Private Function Wort(wert As Integer) As String
   Dim h As Integer
   h = wert Mod 100
   If h < 20 Then
      Wort = BisNeunzehn(h)
   Else
      Wort = BisNeunzehn(h Mod 10) & IIf(h Mod 10 > 0, "und", "") & _
         Zehner(Int(h / 10))
   End If
   h = (wert Mod 1000 - h) / 100
   If h > 0 Then Wort = BisNeunzehn(h) & "hundert" & Wort
End Function

Private Function Text(wert As Double)
   Dim l As Integer, i As Integer, p As Integer
   If InStr(1, Str(wert), ",") = 0 And InStr(1, Str(wert), ".") = 0 Then
      For i = 1 To 1 + Int(Len(Str(wert)) / 3)
         p = Val("0" & Mid("000" + Str(wert), _
            Len("000" & Str(wert)) - i * 3 + 1, 3))
         If p > 0 Then Text = Wort(p) & Tausender(i - 1) & Text
      Next
   Else
      Text = "#Ganzzahl!"
   End If
   If Right(Text, 3) = "ein" Then Text = Text & "s"
End Function

Beiträge aus dem Excel-Forum zu den Themen Druck und Serie

PDF Drucken VBA Generierung von Tabs per VBA + Sammeldruck
Akt. Datum und Uhrzeit am gedruckten Dokument UserForm im Querformat drucken
zoom auf Druckbereichsbreite anpassen Bilder in Registerblatt drucken
PDF eventuell Ausdruck sperren? Druckprobleme....
SeriesCollection(1).Values Fehler 1004 Serienmail
Tabellenblätter Ausdruck gruppieren Drucken mit VBA
Bestimmte Zeilen/ Spalten nicht mitdrucken Diagramme DIN A3 drucken
Automatischen Andruck auf Standartdrucker erzeugen ActiveChart.SeriesCollection
Druckerauswahl Blätter autom. ein-/ausblenden + drucken
Kann bestimmten Drucker nicht auswählen Drucker nicht vorhanden, dann Meldung
Arbeitsmappendruck Abfrage ob Druckbereich zu groß für Seitenbreite
Druck PDF-Datei Serien Zählen, kurz auswerten
Fehler 1004 beim Druck einer PDF - mit Screenshot Druckeinstellungen für mehrere Drucke übernehmen
Grafik drucken Mit Change() o. Calculate() Filtern und Drucken
Druckparameter an neue Datei Button zum Ausdrucken
Druckparameter an Datei mitgeben Makro für ereignisabh. Druck verschiedener Seiten
Excel Seriendruck im PDF-Format Per VBA drucken - Adobe PDF on ne0x
Drucken, nur wenn Bedingung erfüllt ist! variablen Druckbereich definieren
Mit Makro Virtuelle Drucker (PDF) ansteuern Standarddrucker festsetzen??
Wann zuletzt ausgedruckt Excel druckt keine Bilder!
sql Ausdruck like Excel Druckmakro - VBA Experten gesucht
CommandButton nicht mit ausdrucken SeriesCollection.Name macht Probleme
Druckvorschau Druckerdialog
mehrere Sheets farbig ausdrucken, weshalb ... Chart SeriesCollection per VBA dynamisch ändern
Laufzeitfehler Nr. 9 bei Druckerauswahl Tabelle drucken