abonnement Unibet Coolblue Bitvavo
  woensdag 9 april 2003 @ 11:24:00 #1
41280 marc1982
Red light -- Green light
pi_9673363
heeft iemand voorbeelden van zoekfuncties in een access database, doormiddel van visual basic, kom er niet echt helemaal uit.
dus...
  woensdag 9 april 2003 @ 11:25:43 #2
17061 mvt
blame Canada
pi_9673396
Bedoel je niet gewoon een standaard query of een SQL query??
Die maak je over het algemeen niet in VB.
We were to understand there would be pie and punch?
  woensdag 9 april 2003 @ 11:33:53 #3
41280 marc1982
Red light -- Green light
pi_9673536
nee dat bedoel ik niet, want ik wil op de eerste (paar) letter(s) van een achternaam ofzo kunnen zoeken, en dat kan niet met een query omdat je dan geen gedeeltelijke invoer hebt. of je maakt de keuze al in het maken van de query of je hebt de gehele invoer nodig.
of kan dit wel?
dus...
pi_9673714
quote:
Op woensdag 9 april 2003 11:33 schreef marc1982 het volgende:
nee dat bedoel ik niet, want ik wil op de eerste (paar) letter(s) van een achternaam ofzo kunnen zoeken, en dat kan niet met een query omdat je dan geen gedeeltelijke invoer hebt. of je maakt de keuze al in het maken van de query of je hebt de gehele invoer nodig.
of kan dit wel?
ik zou maar wat meer gaan zoeken en lezen en vooral de SQL taal leren want het kan wel met een SQL Query.
In de ban van de mods.
  woensdag 9 april 2003 @ 11:44:58 #5
41280 marc1982
Red light -- Green light
pi_9673791
hoe dan?
voorbeeld?
dus...
  woensdag 9 april 2003 @ 11:47:04 #6
31816 thumper
ŻŻŻŻŻŻŻŻŻŻlaklaarzen zijn geil
pi_9673834
In Oracle SQL met het LIKE statement, en een % als joker.
Dus
SELECT * FROM tabel WHERE tekstveld LIKE 'Thum%'

zoekt alle records waarvan de inhoud van het veld 'tekstveld' begint met 'Thum'

Voor Access zal er ook wel zoiets zijn...

volvo c30. you wish your honda was this hot.
"If you can't say something nice, don't say nothing at all". This moral is now known by such names as the Thumperian principle, "Thumper's rule" or "Thumper's law".
pi_9673843
quote:
Op woensdag 9 april 2003 11:33 schreef marc1982 het volgende:
nee dat bedoel ik niet, want ik wil op de eerste (paar) letter(s) van een achternaam ofzo kunnen zoeken, en dat kan niet met een query omdat je dan geen gedeeltelijke invoer hebt. of je maakt de keuze al in het maken van de query of je hebt de gehele invoer nodig.
of kan dit wel?
code:
select naam
from <tabelnaam>
where naam like "<zoekveldwaarde>%"

Zoiets zou ongeveer wel moeten werken. Je kan zo zoeken op waarden die beginnen met de waarde die je in het zoekveld hebt ingevuld.
"...while I'm supposed to marry her brother, a renowned pillow biter." Cersei Lannister
"Float like a butterfly, sting like a bee, look ridiculous." Rory the Roman
"It's smaller on the outside." Clara Oswin Oswald
  woensdag 9 april 2003 @ 11:51:49 #8
41280 marc1982
Red light -- Green light
pi_9673937
quote:
Op woensdag 9 april 2003 11:47 schreef thumper het volgende:
In Oracle SQL met het LIKE statement, en een % als joker.
Dus
SELECT * FROM tabel WHERE tekstveld LIKE 'Thum%'

zoekt alle records waarvan de inhoud van het veld 'tekstveld' begint met 'Thum'

Voor Access zal er ook wel zoiets zijn...


dit snap ik wel, dit werkt ook wel.
alleen wil ik invoer als gebruiker hebben en dus niet telkens m'n query moeten aanpassen
quote:
Op woensdag 9 april 2003 11:47 schreef WheeleE het volgende:

[..]

code:
select naam
from <tabelnaam>
where naam like "<zoekveldwaarde>%"

Zoiets zou ongeveer wel moeten werken. Je kan zo zoeken op waarden die beginnen met de waarde die je in het zoekveld hebt ingevuld.
en wat houd die zoekveldwaarde dan in, wat is dat? hoe moet ik dat zien dan?
dus...
  woensdag 9 april 2003 @ 11:59:51 #9
31816 thumper
ŻŻŻŻŻŻŻŻŻŻlaklaarzen zijn geil
pi_9674119
quote:
Op woensdag 9 april 2003 11:51 schreef marc1982 het volgende:

[..]

dit snap ik wel, dit werkt ook wel.
alleen wil ik invoer als gebruiker hebben en dus niet telkens m'n query moeten aanpassen
[..]

en wat houd die zoekveldwaarde dan in, wat is dat? hoe moet ik dat zien dan?


De door de gebruiker ingevoerde waarde komt dus na het LIKE statement, iets als:
... WHERE veld LIKE "hier_het_door_gebruiker_ingevoerde_variabele%"
volvo c30. you wish your honda was this hot.
"If you can't say something nice, don't say nothing at all". This moral is now known by such names as the Thumperian principle, "Thumper's rule" or "Thumper's law".
  woensdag 9 april 2003 @ 12:01:50 #10
41280 marc1982
Red light -- Green light
pi_9674157
ik denk inderdaad dat dit wel moet werken
de invoer van de gebruiker word dus gezet in een variable?
hoe maak ik deze variable aan?
hoe gebruik ik deze?
en hoe moet deze gelinkt worden?
dus...
  woensdag 9 april 2003 @ 12:03:07 #11
45649 kobold
Challenge rating: 1/4
pi_9674184
quote:
Op woensdag 9 april 2003 12:01 schreef marc1982 het volgende:
ik denk inderdaad dat dit wel moet werken
de invoer van de gebruiker word dus gezet in een variable?
hoe maak ik deze variable aan?
hoe gebruik ik deze?
en hoe moet deze gelinkt worden?
Ga eerst maar 'es een basiscursus VB volgen...
This humanoid is about the size of a gnome or halfling. It has a scaly hide, a naked tail like that of a rat, and a doglike head with two small horns.
pi_9674194
quote:
Op woensdag 9 april 2003 11:51 schreef marc1982 het volgende:

[..]

dit snap ik wel, dit werkt ook wel.
alleen wil ik invoer als gebruiker hebben en dus niet telkens m'n query moeten aanpassen
[..]

en wat houd die zoekveldwaarde dan in, wat is dat? hoe moet ik dat zien dan?


Ik ben niet zo bekend met Acces. Je zou even moeten uitzoeken hoe je de waarde van een tekstveld in een variabele kunt krijgen. die variabele kun je dan gebruiken: LIKE "<variabelenaam>%"
"...while I'm supposed to marry her brother, a renowned pillow biter." Cersei Lannister
"Float like a butterfly, sting like a bee, look ridiculous." Rory the Roman
"It's smaller on the outside." Clara Oswin Oswald
  woensdag 9 april 2003 @ 12:04:48 #13
16142 SignOTheTimes
Symathiek & schattig
pi_9674217
strsql = "select * from tabellete where naam= '" & strNaam & "%'"
Op 14 mei 2003 zei Amber: "Kortom, SOTT is de charmantste en liefste vader van de wereld."
  woensdag 9 april 2003 @ 12:06:46 #14
41280 marc1982
Red light -- Green light
pi_9674272
SELECT klanten.Aanhef, klanten.Achternaam, klanten.Bedrijfsnaam, klanten.Adres, klanten.Postcode, klanten.Woonplaats, klanten.Contactpersoon, klanten.[Telefoon nummer], klanten.[06 nr], klanten.[Fax nr], klanten.[Naam schip], klanten.[Ligplaats schip], klanten.[Email adres], klanten.Referentie, klanten.Datum, klanten.Prijzen, klanten.Extra
FROM klanten
WHERE (klanten.Achternaam)like [achternaam=];
ik heb nu dit?
kunnen jullie hier iets mee?
is er niemand bekend met het declaren van een variable, zodat ik deze bij de invoer kan gebruiken?
dus...
  woensdag 9 april 2003 @ 12:07:06 #15
31816 thumper
ŻŻŻŻŻŻŻŻŻŻlaklaarzen zijn geil
pi_9674280
quote:
Op woensdag 9 april 2003 12:01 schreef marc1982 het volgende:
ik denk inderdaad dat dit wel moet werken
de invoer van de gebruiker word dus gezet in een variable?
hoe maak ik deze variable aan?
hoe gebruik ik deze?
en hoe moet deze gelinkt worden?
Hmmm, leer eerst maar wat VB dan... :| In de Help zal vast wel wat staan...
volvo c30. you wish your honda was this hot.
"If you can't say something nice, don't say nothing at all". This moral is now known by such names as the Thumperian principle, "Thumper's rule" or "Thumper's law".
  woensdag 9 april 2003 @ 12:14:49 #16
31362 CreativeMind
Wanneer wordt het zomer?
pi_9674461
Je stelt in runtime de query samen, dus op zo'n manier:
code:
dim jouwquery as string, zoekwoord as string

'vraag zoekwoord aan gebruiker

jouwquery = "SELECT ..... WHERE ..... = " & zoekwoord & "ORDER BY ....;" (of zoiets)

dim db as database, rst as recordset

set db = currentdb
set rst = db.openrecordset(jouwquery)

'nu kun je met alles wat je in rst vindt op tientallen manieren zoekresultaten outpoepen

rst.close
set db = nothing


  woensdag 9 april 2003 @ 12:17:41 #17
41280 marc1982
Red light -- Green light
pi_9674514
quote:
Op woensdag 9 april 2003 12:14 schreef CreativeMind het volgende:
Je stelt in runtime de query samen, dus op zo'n manier:
code:
dim jouwquery as string, zoekwoord as string

'vraag zoekwoord aan gebruiker

jouwquery = "SELECT ..... WHERE ..... = " & zoekwoord & "ORDER BY ....;" (of zoiets)

dim db as database, rst as recordset

set db = currentdb
set rst = db.openrecordset(jouwquery)

'nu kun je met alles wat je in rst vindt op tientallen manieren zoekresultaten outpoepen

rst.close
set db = nothing



ik zal wel heel dom overkomen, maar runtime???
wat bedoel je hier mee?
waar moet ik deze code nou inzetten?
in sql of in een module ofzo?
dus...
  woensdag 9 april 2003 @ 12:20:42 #18
31362 CreativeMind
Wanneer wordt het zomer?
pi_9674574
quote:
Op woensdag 9 april 2003 12:06 schreef marc1982 het volgende:
SELECT klanten.Aanhef, klanten.Achternaam, klanten.Bedrijfsnaam, klanten.Adres, klanten.Postcode, klanten.Woonplaats, klanten.Contactpersoon, klanten.[Telefoon nummer], klanten.[06 nr], klanten.[Fax nr], klanten.[Naam schip], klanten.[Ligplaats schip], klanten.[Email adres], klanten.Referentie, klanten.Datum, klanten.Prijzen, klanten.Extra
FROM klanten
WHERE (klanten.Achternaam)like [achternaam=];
ik heb nu dit?
kunnen jullie hier iets mee?
is er niemand bekend met het declaren van een variable, zodat ik deze bij de invoer kan gebruiken?
Dat gaat dus niet. Je kunt niet vanuit VBA een variabele meegeven aan een query. Je kunt wel in die query gegevens uit een tekstboxje op een formulier halen. Dan vul je gewoon bij Criteria in de query het volgende in:
[Forms]![formuliernaam].[tekstboxnaam]

Maar je kunt het beste de query helemaal binnen VBA houden, zie daarvoor mijn post hierboven.

pi_9674593
quote:
Op woensdag 9 april 2003 12:17 schreef marc1982 het volgende:

[..]

ik zal wel heel dom overkomen, maar runtime???
wat bedoel je hier mee?
waar moet ik deze code nou inzetten?
in sql of in een module ofzo?


nogmaals.

doe eerst eens wat basis VB dingen voordat je aan de slag gaat met VB->sql/access

In de ban van de mods.
  woensdag 9 april 2003 @ 12:24:42 #20
31362 CreativeMind
Wanneer wordt het zomer?
pi_9674655
quote:
Op woensdag 9 april 2003 12:17 schreef marc1982 het volgende:

[..]

ik zal wel heel dom overkomen, maar runtime???
wat bedoel je hier mee?
waar moet ik deze code nou inzetten?
in sql of in een module ofzo?


Als ik je openingspost lees begrijp ik dat je met Visual basic een zoekdingetje wil maken. Dus ja, deze code moet je achter een commandbutton zetten, he.
Met in runtime de SQL query samenstellen bedoel ik dat je een deel van de query hard-code in VBA, en dat je het zoekwoord wat de gebruiker ingeeft er pas aan toevoegt op het moment dat ie op de knop drukt.
  woensdag 9 april 2003 @ 12:39:50 #21
41280 marc1982
Red light -- Green light
pi_9674907
ik moet dus bijvoorbeeld een formulier maken, hier een invoer vak en knop inzetten, en dan bij de knop die code erin zetten, dat word dus een stuk programmeer code in vb.
klopt dit?
of snap ik er echt geen kloot van?
dus...
  woensdag 9 april 2003 @ 12:41:16 #22
45649 kobold
Challenge rating: 1/4
pi_9674933
Je begint 't een beetje te snappen, maar je kan dat stukje code er niet rechtsstreeks erin kwakken.
This humanoid is about the size of a gnome or halfling. It has a scaly hide, a naked tail like that of a rat, and a doglike head with two small horns.
  woensdag 9 april 2003 @ 12:44:46 #23
41280 marc1982
Red light -- Green light
pi_9675001
nee ik snap dat ik die code moet aanpassen aan mijn tabel, query en veldnamen.
toch?
dus...
  woensdag 9 april 2003 @ 12:47:48 #24
45649 kobold
Challenge rating: 1/4
pi_9675061
Ok, en deze regel moet je uiteraard ook aanpassen:
code:
'nu kun je met alles wat je in rst vindt op tientallen manieren zoekresultaten outpoepen
Dat wordt denk ik 't moeilijkste voor jou
This humanoid is about the size of a gnome or halfling. It has a scaly hide, a naked tail like that of a rat, and a doglike head with two small horns.
pi_9675515
quote:
Op woensdag 9 april 2003 12:47 schreef kobold het volgende:
[..]
outpoepen
[..]
  woensdag 9 april 2003 @ 13:13:37 #26
31362 CreativeMind
Wanneer wordt het zomer?
pi_9675590
quote:
Op woensdag 9 april 2003 13:10 schreef sop het volgende:

[..]


Met dank aan jou, Sop, want jij hebt mij een tijd terug een eind op gang geholpen met Access/VBA
pi_9678172
quote:
Op woensdag 9 april 2003 13:13 schreef CreativeMind het volgende:

[..]

Met dank aan jou, Sop, want jij hebt mij een tijd terug een eind op gang geholpen met Access/VBA


Echt waar? Sorry.
  woensdag 9 april 2003 @ 15:55:52 #28
41280 marc1982
Red light -- Green light
pi_9679549
kan iemand mij, stukjes van, deze source uitleggen?


Private Sub Knop_Zoeken_Click()



Dim mijnsql As String, MijnCriteria As String, mijnrecordbron As String
Dim AantalArg As Integer
Dim Tdl As Variant
Dim ContactStr As String
Dim I As Integer

AantalArg = 0
MijnCriteria = ""
WaaraanToevoegen [Achternaam], "Klanten.Achternaam", MijnCriteria, AantalArg
WaaraanToevoegen [postcode], "Klanten.postcode", MijnCriteria, AantalArg
WaaraanToevoegen [Telefoon], "Klanten.bedrijfsnaam", MijnCriteria, AantalArg

If MijnCriteria = "" Then
MijnCriteria = "True"
End If


mijnsql = "SELECT * FROM Klanten WHERE "

mijnrecordbron = mijnsql & MijnCriteria & " ORDER BY Klanten.Achternaam"

Debug.Print mijnrecordbron


Me![klantenzoeken_sub].Form.RecordSource = mijnrecordbron

If Me![klantenzoeken_sub].Form.RecordsetClone.RecordCount = 0 Then
MsgBox "Er zijn geen klanten gevonden, voer de gegevens van de nieuwe klant in.", 48, "Geen klant gevonden."
Else
Me![klantenzoeken_sub].SetFocus
End If

End Sub
Private Sub WaaraanToevoegen(veldwaarde As Variant, VeldNaam As String, MijnCriteria As String, AantalArg As Integer)


If veldwaarde <> "" Then
' "And" toevoegen als er een ander criterium is.
If AantalArg > 0 Then
MijnCriteria = MijnCriteria & " And "
End If

' Het criterium toevoegen aan de bestaande criteria.
' VeldWaarde en sterretje tussen aanhalingstekens plaatsen.
MijnCriteria = (MijnCriteria & VeldNaam & " Like " & Chr(39) & Chr(42) & veldwaarde & Chr(42) & Chr(39))

' Aantal argumenten verhogen.
AantalArg = AantalArg + 1
End If

End Sub

dus...
pi_9679702
ik mis zowieso een connectie met de DB.

waar doe je dat??

In de ban van de mods.
  woensdag 9 april 2003 @ 16:07:37 #30
41280 marc1982
Red light -- Green light
pi_9679841
moet je de hele code hebben?
mail me op marciemarc1982@hotmail.com
dan mail ik de code wel

[Dit bericht is gewijzigd door marc1982 op 09-04-2003 16:19]

dus...
pi_9680402
quote:
Op woensdag 9 april 2003 16:07 schreef marc1982 het volgende:
moet je de hele code hebben?
mail me op marciemarc1982@hotmail.com
dan mail ik de code wel
Hoever is jouw bieb?
  woensdag 9 april 2003 @ 16:40:34 #32
41280 marc1982
Red light -- Green light
pi_9680713
quote:
Op woensdag 9 april 2003 16:27 schreef Roonaan het volgende:

[..]

Hoever is jouw bieb?


hoe bedoel je?
dus...
pi_9681222
quote:
Op woensdag 9 april 2003 16:40 schreef marc1982 het volgende:

[..]

hoe bedoel je?


Wat denk je?
Dat je hier geen online cursus krijgt, maar dat we je helpen als je met een dingetje vastzit.
We gaan niet helpen (tenminste ik iig niet) om jouw knip en plak werk werkend te krijgen.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')