Als ik op opslaan druk wordt er ook gecontroleerd of de verplichte velden gevuld zijn terwijl dit alleen bij opslaan als moet gebeuren en zodra ik de msgbox weg klik door op OK te drukken wordt er wel opgeslagen.. dus waar gaat het niet goed in mijn macro? (vet
gedrukt is toegevoegd aan de reeds bestaande macro welke goed werkte)
Ik heb de volgende macro in ThisWorkbook en in A1 staat de volgende formule
=ALS(EN(A17="AUTOVERK";B8<>"";B9<>"";B10<>"";18<>"";C19<>"";C20<>"";C22<>"");"opslaan";ALS(EN(A17<>"AUTOVERK";B8<>"";B9<>"";B10<>"";B13<>"";B14<>"");"opslaan";"niet opslaan"))
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strBestandsnaam As String
Dim dlg As FileDialog
On Error GoTo Err_Exit
If Range("A1") = "niet opslaan" ThenMsgBox "Vul eerst de verplichte velden(*) in !!"Cancel = TrueEnd IfstrBestandsnaam = "C:\Users\Kolibrie\Garage" & "FACTUUR " & Range("F10") & " " & Range("G10") & ".PDF"
If StrComp(strBestandsnaam, Me.FullName, vbTextCompare) <> 0 _
And SaveAsUI = True Then
Range("F8:F9").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Set dlg = Application.FileDialog(msoFileDialogSaveAs)
Cancel = True
With dlg
.InitialFileName = strBestandsnaam
If .Show = True Then
Application.EnableEvents = False
Application.DisplayAlerts = False
.Execute
End If
End With
End If
Exit_Exit:
Application.DisplayAlerts = True
Application.EnableEvents = True
Exit Sub
Err_Exit:
MsgBox Err.Description
Resume Exit_Exit
End Sub
Mvg Joyce