Beste allemaal
Ik krijg een foutmelding m.b.t. een code dat bij een Else de If mist, maar die zit wel in de code .
Waarschijnlijk heb ik de plaatsing niet juist.
Kan iemand mij daar mee helpen?
De bedoeling is als volgt; er moet een keuze gemaakt worden bij invoer met of zonder 9% BTW
Wanneer er in de factuur 21% en 9% BTW staan moeten deze beide in de sheet inkomsten komen te staan, maar als er in de factuur alleen maar 21% BTW producten staan moet er maar één rij geplaatst en ingevuld worden en niet twee rijen waarvan er dan een leeg is.
Vandaar de if else code.
Hierbij de code, misschien ziet iemand direct de fout, zo niet dan zal ik ook het testbestand bijvoegen.
Ik krijg een foutmelding m.b.t. een code dat bij een Else de If mist, maar die zit wel in de code .
Waarschijnlijk heb ik de plaatsing niet juist.
Kan iemand mij daar mee helpen?
De bedoeling is als volgt; er moet een keuze gemaakt worden bij invoer met of zonder 9% BTW
Wanneer er in de factuur 21% en 9% BTW staan moeten deze beide in de sheet inkomsten komen te staan, maar als er in de factuur alleen maar 21% BTW producten staan moet er maar één rij geplaatst en ingevuld worden en niet twee rijen waarvan er dan een leeg is.
Vandaar de if else code.
Hierbij de code, misschien ziet iemand direct de fout, zo niet dan zal ik ook het testbestand bijvoegen.
Code:
'Save data of verkoopfactuur on sheet inkomsten.
Sub PDF_Boeken_Nieuws()
Dim sourceSheet As Worksheet
Dim dataSheet As Worksheet
Dim nextRow As Integer
Dim Mndm, MnDnr, YrNr
' Make some sheet variables .
Set sourceSheet = Worksheets("verkoopfactuur")
Set dataSheet = Worksheets("Inkomsten")
'Unprotect the Worksheet
Sheets("Inkomsten").Unprotect
Dim Answer As VbMsgBoxResult
Answer = MsgBox("Wilt u deze factuur boeken?.", vbYesNo + vbQuestion + vbDefaultButton2, " ")
If Answer = vbYes Then
On Error Resume Next
'MkDir "/Users/Geert/Documents/Administratie/Facturen/" & Year(Date)
MkDir "/Users/homecare/Documents/Geertje/Facturen/" & Year(Date)
On Error GoTo 0
'Kijkt of er ook 9% BTW in de factuur staat, indiendit zo is twee regels plaatsen
If Range("k47").Value > 0 Then
With Sheets("Verkoopfactuur")
'maak PDF
'pdf = "/Users/Geert/Documents/Administratie/Facturen/" & Year(Date) & "/" & .Range("H11").Value & " " & .Range("H5").Value & " " & .Range("H10").Value & ".pdf"
pdf = "/Users/homecare/Documents/Geertje/Facturen/" & Year(Now()) & "/" & .Range("H11").Value & " " & .Range("H5").Value & " " & .Range("H10").Value & ".pdf"
Range("F2:M59").Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=pdf
' posting invoices
' Get the next empty row from the Data sheet.
nextRow = dataSheet.Range("F" & dataSheet.Rows.Count).End(xlUp).Offset(1).Row
' Input the form values into the Data sheet.
dataSheet.Cells(nextRow, 6).Value = sourceSheet.Range("H10").Value
dataSheet.Cells(nextRow, 7).Value = sourceSheet.Range("Q3").Value
dataSheet.Cells(nextRow, 8).Value = sourceSheet.Range("H11").Value
dataSheet.Cells(nextRow, 9).Value = sourceSheet.Range("I15").Value
dataSheet.Cells(nextRow, 10).Value = sourceSheet.Range("H5").Value
dataSheet.Cells(nextRow, 11).Value = sourceSheet.Range("K46").Value
dataSheet.Cells(nextRow, 12).Value = sourceSheet.Range("I46").Value
dataSheet.Cells(nextRow, 13).Value = sourceSheet.Range("M46").Value
dataSheet.Cells(nextRow, 14).Value = sourceSheet.Range("P46").Value
dataSheet.Cells(nextRow, 15).Value = sourceSheet.Range("Q4").Value
dataSheet.Cells(nextRow, 16).Value = sourceSheet.Range("Q7").Value
dataSheet.Cells(nextRow, 17).Value = sourceSheet.Range("P15").Value
dataSheet.Cells(nextRow, 19).Value = Month(.Range("H10"))
dataSheet.Cells(nextRow, 20).Value = Year(.Range("H10"))
' posting invoices
' Get the next empty row from the Data sheet.
nextRow = dataSheet.Range("F" & dataSheet.Rows.Count).End(xlUp).Offset(1).Row
dataSheet.Cells(nextRow, 6).Value = sourceSheet.Range("H10").Value
dataSheet.Cells(nextRow, 7).Value = sourceSheet.Range("Q3").Value
dataSheet.Cells(nextRow, 8).Value = sourceSheet.Range("H11").Value
dataSheet.Cells(nextRow, 9).Value = sourceSheet.Range("I15").Value
dataSheet.Cells(nextRow, 10).Value = sourceSheet.Range("H5").Value
dataSheet.Cells(nextRow, 11).Value = sourceSheet.Range("K47").Value
dataSheet.Cells(nextRow, 12).Value = sourceSheet.Range("I47").Value
dataSheet.Cells(nextRow, 13).Value = sourceSheet.Range("M47").Value
dataSheet.Cells(nextRow, 14).Value = sourceSheet.Range("P47").Value
dataSheet.Cells(nextRow, 15).Value = sourceSheet.Range("Q4").Value
dataSheet.Cells(nextRow, 16).Value = sourceSheet.Range("Q7").Value
dataSheet.Cells(nextRow, 17).Value = sourceSheet.Range("P15").Value
dataSheet.Cells(nextRow, 19).Value = Month(.Range("H10"))
dataSheet.Cells(nextRow, 20).Value = Year(.Range("H10"))
'nieuwe factuur
.Range("H5,O15,G15:L43").ClearContents
.Range("P2").Value = Range("P2").Value + 1
Application.Goto .Range("H5")
' Als er alleen 21% BTW staat een regel plaatsen
Else
' posting invoices
' Get the next empty row from the Data sheet.
nextRow = dataSheet.Range("F" & dataSheet.Rows.Count).End(xlUp).Offset(1).Row
' Input the form values into the Data sheet.
dataSheet.Cells(nextRow, 6).Value = sourceSheet.Range("H10").Value
dataSheet.Cells(nextRow, 7).Value = sourceSheet.Range("Q3").Value
dataSheet.Cells(nextRow, 8).Value = sourceSheet.Range("H11").Value
dataSheet.Cells(nextRow, 9).Value = sourceSheet.Range("I15").Value
dataSheet.Cells(nextRow, 10).Value = sourceSheet.Range("H5").Value
dataSheet.Cells(nextRow, 11).Value = sourceSheet.Range("K46").Value
dataSheet.Cells(nextRow, 12).Value = sourceSheet.Range("I46").Value
dataSheet.Cells(nextRow, 13).Value = sourceSheet.Range("M46").Value
dataSheet.Cells(nextRow, 14).Value = sourceSheet.Range("P46").Value
dataSheet.Cells(nextRow, 15).Value = sourceSheet.Range("Q4").Value
dataSheet.Cells(nextRow, 16).Value = sourceSheet.Range("Q7").Value
dataSheet.Cells(nextRow, 17).Value = sourceSheet.Range("P15").Value
dataSheet.Cells(nextRow, 19).Value = Month(.Range("H10"))
dataSheet.Cells(nextRow, 20).Value = Year(.Range("H10"))
End With
UserForm2.Show
End If
MsgBox "Factuur is niet geboekt"
Application.Goto sourceSheet.Range("H5")
End If
Sheets("Inkomsten").Protect
Sheets("Gegevens").Protect
End Sub