Goedendag,
Onderstaande code is een bestaande code voor een form, waarbij ik in dit form nu twee niet-verplicht in te vullen velden wil toevoegen. Echter, ik wil de gebruiker wel er op wijzen dat Veld 1 en/of Veld 2 leeg zijn. Hoe kan ik dit neerzetten, ik heb een poging gedaan hieronder, maar vooral het en/of aspect is bepaald lastig voor mij. En uiteindelijk als de gebruiker beide niet in wil vullen hoe kan ik dan weer verder gaan naar de resterende code (het opstellen van een e-mail)? doe ik dat met een Call functie van VBA ofzo? Ik ben benieuwd!
Onderstaande code is een bestaande code voor een form, waarbij ik in dit form nu twee niet-verplicht in te vullen velden wil toevoegen. Echter, ik wil de gebruiker wel er op wijzen dat Veld 1 en/of Veld 2 leeg zijn. Hoe kan ik dit neerzetten, ik heb een poging gedaan hieronder, maar vooral het en/of aspect is bepaald lastig voor mij. En uiteindelijk als de gebruiker beide niet in wil vullen hoe kan ik dan weer verder gaan naar de resterende code (het opstellen van een e-mail)? doe ik dat met een Call functie van VBA ofzo? Ik ben benieuwd!
Code:
Private Sub Opslaan_Click()
On Error GoTo Err_Opslaan_Click
Dim objOutlook As Object
Dim objEmail As Object
Dim Con As Object
Dim Rs, Rsq, Rst, Rss, Rsv, Rsn, Rsp, Rsr As Object
Dim stSql As String
Dim StrmsgA As String
Dim StrmsgB As String
Dim StrmsgC As String
If Trim(Me!Datum & "") = "" Then
MsgBox "Vul de datum in.", vbInformation, "voorbeeldDB"
Me.Datum.SetFocus
ElseIf Nz(Me!Aanname, "0") = "0" Then
MsgBox "Voer een naam in voor de aanname.", vbInformation, "voorbeeldDB"
Me.Aanname.SetFocus
ElseIf Nz(Me!Betrokkene, "0") = "0" Then
MsgBox "Voer de naam van de betrokkene in.", vbInformation, "voorbeeldDB"
Me.Betrokkene.SetFocus
ElseIf Nz(Me!Groep, "0") = "0" Then
MsgBox "Geef een groep aan.", vbInformation, "voorbeeldDB"
Me.Groep.SetFocus
ElseIf Nz(Me!Vereniging, "0") = "0" Then
MsgBox "Vul de vereniging in.", vbInformation, "voorbeeldDB"
Me.Vereniging.SetFocus
ElseIf Nz(Me!Soort, "0") = "0" Then
MsgBox "Geef het soort aanmelding aan.", vbInformation, "voorbeeldDB"
Me.Soort.SetFocus
ElseIf Trim(Me!Omschrijving & "") = "" Then
MsgBox "Vul een omschrijving in.", vbInformation, "voorbeeldDB"
Me.Omschrijving.SetFocus
ElseIf Trim(Me!Maatregel & "") = "" Then
MsgBox "Vul een maatregel in.", vbInformation, "voorbeeldDB"
Me.Maatregel.SetFocus
ElseIf Trim(Me!Status & "") = "" Then
MsgBox "Geef de status van het verbeterpunt aan.", vbInformation, "voorbeeldDB"
Me.Kader71.SetFocus
ElseIf Nz(Me!Afhandeling, "0") = "0" Then
MsgBox "Voer een naam in voor de afhandeling.", vbInformation, "voorbeeldDB"
Me.Afhandeling.SetFocus
[COLOR="red"]
strmsgA = 'Veld 1 + Veld 2 zijn nog niet ingevuld wilt u deze invullen?'
strmsgB = 'Veld 1 is nog niet ingevuld wilt u deze invullen?'
strmsgC = 'Veld 2 is nog niet ingevuld wilt u deze invullen?'
ElseIf Trim(Me!Veld1 & "") = "" AND Trim(Me!Veld2 & "") Then
If MsgBox(strMsgA, vbQuestion + vbYesNo, "voorbeeldDB") = vbYes Then
Me.Veld1.SetFocus
ElseIf
ElseIf Trim(Me!Veld2 & "") = "" Then
If MsgBox(strMsgB, vbQuestion + vbYesNo, "voorbeeldDB") = vbYes Then
Me.Veld1.SetFocus
ElseIf
ElseIf Trim(Me!Veld2 & "") = "" Then
If MsgBox(strMsgB, vbQuestion + vbYesNo, "voorbeeldDB") = vbYes Then
Me.Veld2.SetFocus
ElseIf
'Vanaf hier naar onderstaande verzendprocedure... hoe zet ik dat neer?
[/COLOR]
Exit Sub
Else
Set Con = Application.CurrentProject.Connection
stSql = "SELECT [Naam] FROM tblMedewerkers "
stSql = stSql & "WHERE [MedewerkerID] = " & Me!Betrokkene
Set Rsq = CreateObject("ADODB.Recordset")
Rsq.Open stSql, Con, 1
stSql = "SELECT [Aanmeldingsoort] FROM tblAanmeldingSoorten "
stSql = stSql & "WHERE [AanmeldingsoortID] = " & Me!Soort
Set Rst = CreateObject("ADODB.Recordset")
Rst.Open stSql, Con, 1
stSql = "SELECT [Groep] FROM tblGroepen "
stSql = stSql & "WHERE [GroepID] = " & Me!Groep
Set Rss = CreateObject("ADODB.Recordset")
Rss.Open stSql, Con, 1
stSql = "SELECT [Verenigingnaam] FROM tblleden "
stSql = stSql & "WHERE [VerenigingID] = " & Me!Vereniging
Set Rsv = CreateObject("ADODB.Recordset")
Rsv.Open stSql, Con, 1
stSql = "SELECT [Status] FROM tblStatus "
stSql = stSql & "WHERE [StatusID] = " & Me!Status
Set Rsp = CreateObject("ADODB.Recordset")
Rsp.Open stSql, Con, 1
stSql = "SELECT [Naam] FROM tblMedewerkers "
stSql = stSql & "WHERE [MedewerkerID] = " & Me!Afhandeling
Set Rsn = CreateObject("ADODB.Recordset")
Rsn.Open stSql, Con, 1
stSql = "SELECT [E-mailadres] FROM tblMedewerkers "
stSql = stSql & "WHERE [MedewerkerID] = " & Me!Afhandeling
Set Rsr = CreateObject("ADODB.Recordset")
Rsr.Open stSql, Con, 1
Set objOutlook = CreateObject("Outlook.application")
Set objEmail = objOutlook.CreateItem(olMailItem)
With objEmail
If IsNull(Rsr![E-mailadres]) Then
MsgBox "Er is geen e-mailadres toegevoegd voor " & Rsn!Naam & ". Ga naar" & vbNewLine & "het scherm 'Instellingen' en klik daar op 'Medewerkers' om een e-mailadres toe te voegen.", vbExclamation, "voorbeeldDB"
.To = ""
Else
.To = Rsr![E-mailadres]
End If
.CC = DLookup("[E-mailadres]", "tblEmail")
.Subject = "Aanmelding " & LCase(Rst![Verenigingsoort])
.HTMLBody = "<script type=text/javascript>"
.Display
End With
DoCmd.RunCommand acCmdSaveRecord
DoCmd.Close acForm, "frmVereniginglidToevoegen"
End If
Exit Sub
Rs.Close
Rsq.Close
Rst.Close
Rss.Close
Rsv.Close
Rsp.Close
Rsn.Close
Rsr.Close
Set Con = Nothing
Set Cont = Nothing
Set Rs = Nothing
Set Rsq = Nothing
Set Rst = Nothing
Set Rss = Nothing
Set Rsv = Nothing
Set Rsp = Nothing
Set Rsn = Nothing
Set Rsr = Nothing
Exit Sub
Exit_Opslaan_Click:
Exit Sub
Err_Opslaan_Click:
MsgBox Err.Description
Resume Exit_Opslaan_Click
End Sub