Bekijk de onderstaande video om te zien hoe je onze site als een web app op je startscherm installeert.
Opmerking: Deze functie is mogelijk niet beschikbaar in sommige browsers.
If Left(.Name, 2) = "NW" Then
With CurrentDb.OpenRecordset("SELECT * FROM tLogboek")
De grap is nu juist dat de procedure de records update! Sowieso verander je niks in de oorspronkelijke (gekoppelde) velden; je typt toch alleen waarden in de niet-gekoppelde velden in? En die velden worden nooit meegenomen bij het 'opslaan' van het formulier, want ze zijn niet gekoppeld aan een veld en tabel. Dus er vált helemaal niks op te slaan. Tenzij je de knop gebruikt die m.b.v. de recordsets a) de tabel bijwerkt, en b) de logtabel vult.(na opslaan van de diverse wijzigingen in form & tabel)
For Each ctl In Controls
With ctl
Select Case .ControlType
Case acTextBox, acComboBox
If Left(.Name, 2) = "NW" Then
.ControlSource = .Tag
End If
End Select
End With
Next ctl
If NWtxtvoornaam1.controlsource <> "" then NWtxtvoornaam1.controlsource = ""
With CurrentDb.OpenRecordset(strSQL)
If .RecordCount > 0 Then
.Edit
.Fields(sVeld).Value = sWaarde_Nieuw
.Update
.Close
End If
End With
With CurrentDb.OpenRecordset("SELECT * FROM tHistorie")
.AddNew
!Extern_ID = Me.Extern_ID
!Datum = Date
!Tijd.Value = TimeSerial(Hour(Now()), Minute(Now()), 0)
!UserID = sUser
!ActieID = Me.cboActiesoort.Value
!Tabel = "[Brontabel]"
!Veld_Ori = sVeld
!Waarde_Ori = sWaarde_Ori
!Waarde_Nieuw = sWaarde_Nieuw
!Mutatiedatum = Me.Mutatiedatum
!Geactiveerd = True
.Update
.Close
End With
Dat zou mij al veuls te ingewikkeld zijn; gewoon een keuzelijst gebruiken waarbij je een persoon zoekt. Eén klik op de naam, en je formulier is gefilterd. Of, alternatief, een tekstvak waarin je 'live' filtert op de naam. Dat doe je uiteraard op basis van de recordbron die je gebruikt. Maar nooit een losse knop met die code.Als ik het formulier Contactpersonen open (originele db), staat op dat formulier een knop die een zoek-query start, waarbij ik kan zoeken op een (deel van) achternaam.
Dat is zó makkelijk op te lossen door het formulier te beveiligen. Zet de eigenschap <Bewerken toestaan> op Nee en je bent er... En wat je zoekfunctie betreft: gooi die macro weg (heb ik als eerste gedaan; ik ben echt volslagen allergisch voor de macro functie van Access) en zet een tekstvak in je koptekst met deze code:Ik wil de gekoppelde velden niet laten zien en met het gebruik van de niet-afhankelijke velden voortkomen dat mensen rechtstreeks in de tabel contactpersonen kunnen wijzigen.
Private Sub Zoekveld_Change()
If Len(Me.Zoekveld.Text) > 0 Then
Me.Filter = "[achternaam] Like ""*" & Me.Zoekveld.Text & "*"""
Me.FilterOn = True
Me.Zoekveld.SelStart = Me.Zoekveld.SelLength
Else
Me.Filter = ""
Me.FilterOn = False
End If
End Sub
We gebruiken essentiële cookies om deze site te laten werken, en optionele cookies om de ervaring te verbeteren.