I don't see how either would work. Add missing red END IF to both.
Code:
************************************************** *****
NEW edited code (not working)
Private Function CreateRechnung() As String
On Error GoTo Err_CreateRechnung
If Me.Dirty Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End If
Dim stDocName As String
Dim daRechDatum As Date
Dim daSplitDatum As Date
Dim filename As String
filename = Environ("temp") + "\Rechnungsbeispiel.pdf"
daSplitDatum = "01.07.2020"
If Not IsNull(Me.RDatum.value) And Not IsNull(Me.Art) Then
daRechDatum = Me.RDatum.value
If Me.RechnungsZyklus = "Dauerrechnung" Then
Select Case Me.Art
Case "E"
If daRechDatum < daSplitDatum Then
stDocName = "RechnungDauer2016"
Else
stDocName = "RechnungDauer2020"
End If
Case "M"
If daRechDatum < daSplitDatum Then
stDocName = "RechnungDauer2016"
Else
stDocName = "RechnungDauer2020"
End If
Call Monate 'Aktion
If Me.RZeitraumMonate < 1 Then
MsgBox "RZeitraum Monate kleiner 1!"
Exit Function
End If
End Select
End If
End If
************************************************** **********
OLD bill format code (still working, but without "RechnungDauer2020")
************************************************** ****
Private Function CreateRechnung() As String
On Error GoTo Err_CreateRechnung
If Me.Dirty Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End If
Dim stDocName As String
Dim daRechDatum As Date
Dim daSplitDatum As Date
Dim filename As String
filename = Environ("temp") + "\Rechnungsbeispiel.pdf"
daSplitDatum = "01.01.2007"
If Not IsNull(Me.RDatum.value) And Not IsNull(Me.Art) Then
daRechDatum = Me.RDatum.value
If Me.RechnungsZyklus = "Dauerrechnung" Then
stDocName = "RechnungDauer2016"
If Me.Art = "M" Then
Call Monate 'Aktion
If Me.RZeitraumMonate < 1 Then
MsgBox "RZeitraum Monate kleiner 1!"
Exit Function
End If
End If
Else
Select Case Me.Art
Case "E"
If daRechDatum < daSplitDatum Then
stDocName = "Rechnung2006"
Else
stDocName = "Rechnung2007"
End If
Case "M"
If daRechDatum < daSplitDatum Then
stDocName = "Rechnung2006"
Else
stDocName = "Rechnung2007"
End If
Call Monate
If Me.RZeitraumMonate < 1 Then
MsgBox "RZeitraum Monate kleiner 1!"
Exit Function
End If
End Select
End If
End If