Gewenste wijziging zoekfuntie Access

Status
Niet open voor verdere reacties.

arnoderuig

Gebruiker
Lid geworden
8 sep 2000
Berichten
577
Op een formulier in een Access2010-applicatie heb ik een zoekknop geplaatst waarvan het de bedoeling is dat binnen de achterliggende tabel naar een bepald record kan worden gezocht. Op het zoekscherm komen standaard de volgende keuzemogelijkheden voor:

Zoeken in: Huidig veld of Huidig document (standaard is Huidig veld)
Waar: Heel veld of Gedeelte van veld of Begin van veld (standaard is Heel veld)
Zoeken: Alles of Omhoog of Omlaag (standaard is Alles).

Ik zou nu graag willen dat in afwijking van de standaard wordt gekozen voor:
Huidig document, Gedeelte van veld, Alles.

Is dit op één of andere wijze in te stellen?

De applicatie is gebaseerd op Access Runtime 2010
 
De zoekknop die je maakt gebruikt een opdrachtregel die nog uit de prehistorie van Access dateert. Althans: tot en met versie 2007. Vraag ons niet waarom.... Ik vermoed, dat ze die strategie in 2010 niet hebben gewijzigd. Om zelf zoekinstellingen te kunnen opgeven moet je gebruik maken van een ander commando. Dat ziet er ongeveer zo uit:

Code:
Option Compare Database
Option Explicit
[B]Public tmp As Variant[/B]
 
Private Sub cmdZoeken_Click()
On Error GoTo Err_cmdZoeken_Click
    
    tmp = InputBox("Typ de zoektekst:", "Zoeken naar...", tmp)
    If Nz(tmp, "") = "" Then Exit Sub
    Screen.PreviousControl.SetFocus
    DoCmd.FindRecord tmp, Match:=acAnywhere, MatchCase:=False, Search:=acSearchAll, OnlyCurrentField:=acAll, FindFirst:=False
    Exit Sub
Err_cmdZoeken_Click:
    MsgBox Err.Description
End Sub

Zoals je ziet, heb ik een Public variabele gedefiniëerd. Deze variabele wordt aangeroepen in een dialoogvenster. Door die Public te maken, kan ik een eerder ingetypte waarde als default terug laten komen, zodat je niet steeds dezelfde zoektekst overnieuw hoeft te typen. Verder zie je dat de regel < DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70> (waarvan ik vermoed dat die bij jou ook is gebruikt) is vervangen door een commando DoCmd.Findrecord. En daarachter een aantal opties die je kunt instellen.
 
OctaFish,

Fijn dat ik weer op je kon rekenen (kan ik ergens sterren uitdelen? :thumb:). Dit is precies wat ik zoek!

Bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan