Filter opheffen op formulier

Status
Niet open voor verdere reacties.

RadboudAKF

Gebruiker
Lid geworden
3 nov 2010
Berichten
219
Hallo,

Ik heb een formulier met een aantal simpele keuzelijsten met invoervak (waarbij een keuze wordt gemaakt die dan wordt geselecteerd-in dit geval geneesmiddelen) en ik heb een paar keuzelijsten waarmee kan worden gefilterd in het formulier.

Ik wil dat het filter wordt opgeheven op het moment dat er weer gebruik wordt gemaakt van de keuzelijst waarin kan worden gezocht in de gehele recordset, dus ongefilterd.

Met VBA ben ik nog steeds niet heel handig; de keuzelijst is ooit gemaakt met een 'ingesloten macro' (; ; Eerste; ="[TXATNR] = " & Str(Nz(Screen.ActiveControl;0)). (ik weet niet hoe ik dat vertaal naar VBA-code)

Als ik dat zou weten (dus de keuzelijst in VBA) dan zou ik daar achter plakken (om het filter op te heffen) Me.filter= "" en dan (denk ik) een requery.

Wie kan mij helpen met de VBA-code voor deze (simpele) opdracht, die ik echter niet voor elkaar krijg.

Jan
 
Oplossing gevonden ...

Misschien voor de meeste "access" of VBA-gebruikers "gefundenes Fressen" ... maar ik ben blij dat ik de oplossing vond.

Na enig zoeken ... hoewel ik niet precies weet of dit de snelste manier is om het filter op te heffen:

Dim rs As Object

Me.Filter = “”

Set rs = Me.Recordset.Clone

rs.FindFirst "[TXATNR] = " & Me![Keuzelijst met invoervak53]

If Not rs.EOF Then Me.Bookmark = rs.Bookmark

Moet ik het Me.Filter = “” gebruiken in AfterUpdate ? of in BeforeUpdate

Jan
 
Je hebt het over filteren, maar in je code filter je niet: je zoekt alleen een record op. Dus wat je dan met Me.Filter probeert te doen, is mij onduidelijk.
 
Ik weet dat ik een record opzoek....maar als ik dat doe in een gefilterd formulier dan werkt het niet .... dus moet ik eerst het filter teniet doen.

Dus, daarmee hef ik het op dat moment gefilterde formulier op ! Als ik met de keuzelijst ga zoeken op het op dat moment gefilterde formulier dan wordt item immers niet gevonden.

Nu werkt het perfect ... filter wordt eerst opgeheven en dan wordt er gezocht in de volledige, dus niet gefilterde, recordset.
 
Als ik met de keuzelijst ga zoeken op het op dat moment gefilterde formulier dan wordt item immers niet gevonden.
Waarom pas je niet het filter aan op basis van wat je kiest in de keuzelijst? Lijkt mij simpeler.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan