Nieuwe zoekopdracht na spatie voor meerdere resultaten in listbox

Status
Niet open voor verdere reacties.

awo036

Nieuwe gebruiker
Lid geworden
18 jun 2018
Berichten
4
Goedendag,

Wie kan mij helpen met het volgende probleem.
Ik heb een tabel met de naam Row.
Daarbij heb ik een formulier met de naam frm_Materiaal met een tekstvak met de naam TextFilter.
En een listbox met de naam Materiaallijst.
De listbox heeft row source:
Code:
SELECT Row.PartNo, Row.PartDescription, Row.Leverancier, Row.LocationNo FROM Row WHERE (((Row.PartNo) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) OR (((Row.PartDescription) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*"))
 OR (((Row.Leverancier) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) OR (((Row.LocationNo) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) OR (((Row.EigenBenaming) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*"));

Als je in de textbox wat ingevuld heb dan wordt de Listbox (Materiaallijst) kleiner. Maar bij sommige zoekopdrachten is mijn listbox nog te lang.
Graag zou ik willen dat als ik wat in de textbox wat ingevuld heb en een spatie geeft dat die dan opnieuw begint met zoeken in de tabel Row.

Hoop dat iemand me kan en wil helpen.

groeten, andré
 
Row is volgens mij een gereserveerde naam in VBA om een tabel dan zo te noemen lijkt mij niet handig.
 
Wie kan mij helpen met het volgende probleem.
Ik heb een tabel met de naam tblInventoryParts.
Daarbij heb ik een formulier met de naam frm_Materiaal met een tekstvak met de naam TextFilter.
En een listbox met de naam Materiaallijst.
De listbox heeft row source:
Code:

Code:
SELECT tblInventoryParts.PartNo, tblInventoryParts.PartDescription, tblInventoryParts.LocationNo, tblInventoryParts.Leverancier
FROM tblInventoryParts
WHERE (((tblInventoryParts.PartNo) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) OR (((tblInventoryParts.PartDescription) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) 
OR (((tblInventoryParts.LocationNo) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) OR (((tblInventoryParts.Leverancier) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*")) 
OR (((tblInventoryParts.Equipment) Like "*" & [Forms]![frm_Materiaal]![TextFilter].[Text] & "*"));

Als je in de textbox wat ingevuld heb dan wordt de Listbox (Materiaallijst) kleiner. Maar bij sommige zoekopdrachten is mijn listbox nog te lang.
Graag zou ik willen dat als ik wat in de textbox wat ingevuld heb en een spatie geeft dat die dan opnieuw begint met zoeken in de tabel Row.

Hoop dat iemand me kan en wil helpen.

Ik heb mijn tabel naam aangepast ivm de reactie van VenA.

groeten, andré
 
En je liep tegen hetzelfde probleem aan, want Row mag dan een onhandige naam zijn, het mag best als tabelnaam gebruikt worden. Dinsdagen zit je probleem niet. Of maakte het aanpassen wel verschil?
 
ja dat klopt, heb nog steeds hetzelfde probleem. Ik ben ook niet echt thuis nog in VBA taal. Dus ik heb geen flauw idee hoe ik dit moet doen.
Vandaar dat ik het maar op het forum ben gaan vragen. Ik ben al weken aan het kijken op internet maar heb nog niet gevonden wat ik moet hebben.
Dus hoop dat iemand me hier zou kunnen helpen dat het uiteindelijk wel lukt.
Bedankt alvast in ieder geval.
 
Al weken? Jofel... Ik snap je vraag ook niet helemaal.
Graag zou ik willen dat als ik wat in de textbox wat ingevuld heb en een spatie geeft dat die dan opnieuw begint met zoeken in de tabel Row.
Je filtert de keuzelijst ‘live’ door tekst in te typen in het tekstvak. Dat snap ik nog, doe ik zelf ook. Maar opnieuw beginnen door een spatie te typen?
Overigens kan je code veel korter :).
 
Ja ik zal het proberen wat verder uit te leggen. Ik zoek via de textfilter een encoder (deze staat in PartDescrition kolom van tabel), maar dan is mijn listbox nog te lang. De naam Encoder komt in meerdere equipment voor.
Dus nu wil ik hem eigenlijk ook nog verder filteren door bijvoorbeeld het soort equipment wat in dezelfde kolom staat, dus bijvoorbeeld AGV of QC.
Bijvoorbeeld: encoder agv en dan moet die de encoders aangeven van de agv's en geen andere meer.
Hoop dat je het snapt anders ga ik even kijken of ik een voorbeeld kan sturen.
Ook moet ik bekennen dat ik nog niet heel lang met access bezig bent.
Dus alle hulp die kan ik gebruiken.
Hoe kan ik me code korter maken?
Alvast bedankt voor de reactie
 
Ik zit voorlopig zonder laptop (vakantie) dus aan voorbeeld heb ik even niks. Ik denk dat je meer hebt aan een combinatie van keuzelijsten (met invoervak) waarin je de categorieën uitfiltert. Als dat kan natuurlijk. De eerste keuzelijst filtert dan de tweede, die filtert de derde etc. Net zoveel keuzelijsten maken als je nodig hebt om alle categorieën te kunnen filteren, zodat je overzichtlijst klein genoeg is.
Daarnaast snap ik niet helemaal hoe je huidige code wordt getriggerd; in ieder geval niet door het tekstvak. En dat zou ik dus wel doen.
Wat jij wilt kan overigens niet: jouw keuzelijst heeft 1 rowsource, en die is al gevuld. Je kunt niet een tweede er aan hangen die het deel voor de spatie gebruikt. Vandaar dat je daar niks voor hebt gevonden. Hou het simpel, en gebruik een paar gefilterde keuzelijsten.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan