[Access] Waardes in tabel invoeren

Pagina: 1
Acties:

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Ik wil graag waardes die zijn ingevoerd in een tijdelijke tabel invoeren. Alleen weet ik niet hoe ik dit doe in VBA. Kan iemand me daarmee op weg helpen.

Hail to the king baby!


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
Dit kan met een toevoegquery. Of gewoon via vba, wat je maar wilt.

Maar vindt het wel een beetje vaage vraagstelling.

Verwijderd

Op woensdag 16 januari 2002 12:49 schreef urk_forever het volgende:
Ik wil graag waardes die zijn ingevoerd in een tijdelijke tabel invoeren. Alleen weet ik niet hoe ik dit doe in VBA. Kan iemand me daarmee op weg helpen.
In VBA kun je 'on the fly' inserten, voorbeeld:
code:
1
CurrentDb.ExecSQL "INSERT INTO blabla (veld1, veld2) VALUES ("bla", 1234)"

Maar het kan ook anders, nl, maak een insert query in queries en laat deze uitvoeren in VBA, zal iets zijn als:
code:
1
CurrentDb.Queries!nogwatbla.Execute

Die laatste weet ik niet zeker maar het zal er niet ver vanaf zitten.


Heb geen Access zodat ik het allemaal kan proberen, Access zal zelf ook voldoende informatie over INSERT-queries verschaffen.

Suc6

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Hmmm, effe een ander Access probleem, ik heb een formulier gemaakt met daarin een subformulier.
Nu wil ik in het hoofd formulier wat invullen en daarna naar het sub formulier gaan, om naar dat subformulier te gaan gebruik ik de volgende code:

Forms!test!subje.Artikelcode.SetFocus

Alleen werkt dit niet, hij zegt dat hij het veld subje niet kan vinden. terwijl ik dit uit de help heb.

Hail to the king baby!


  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Op woensdag 16 januari 2002 16:20 schreef hvdberg het volgende:

[..]

In VBA kun je 'on the fly' inserten, voorbeeld:
code:
1
CurrentDb.ExecSQL "INSERT INTO blabla (veld1, veld2) VALUES ("bla", 1234)"

Maar het kan ook anders, nl, maak een insert query in queries en laat deze uitvoeren in VBA, zal iets zijn als:
code:
1
CurrentDb.Queries!nogwatbla.Execute

Die laatste weet ik niet zeker maar het zal er niet ver vanaf zitten.


Heb geen Access zodat ik het allemaal kan proberen, Access zal zelf ook voldoende informatie over INSERT-queries verschaffen.

Suc6
Deze code :
code:
1
CurrentDb.ExecSQL "INSERT INTO blabla (veld1, veld2) VALUES ("bla", 1234)"

werkt wel, maar kan ik er ook variablen in gebruiken?

Hail to the king baby!


Verwijderd

Op donderdag 17 januari 2002 09:56 schreef urk_forever het volgende:
Hmmm, effe een ander Access probleem, ik heb een formulier gemaakt met daarin een subformulier.
Nu wil ik in het hoofd formulier wat invullen en daarna naar het sub formulier gaan, om naar dat subformulier te gaan gebruik ik de volgende code:

Forms!test!subje.Artikelcode.SetFocus

Alleen werkt dit niet, hij zegt dat hij het veld subje niet kan vinden. terwijl ik dit uit de help heb.
Je wilt hier op een table field focussen en dat kan dus niet. Je moet op een control focussen (bijv. Edit1, Text1) dus bijv:
code:
1
Me.Subje.SetFocus

MSDN/Access help biedt hier voldoende info...

Verwijderd

Op donderdag 17 januari 2002 10:56 schreef urk_forever het volgende:

[..]

Deze code :
code:
1
CurrentDb.ExecSQL "INSERT INTO blabla (veld1, veld2) VALUES ("bla", 1234)"

werkt wel, maar kan ik er ook variablen in gebruiken?
Ja dat kan. Even in de help kijken.

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Op donderdag 17 januari 2002 11:03 schreef hvdberg het volgende:

[..]

Ja dat kan. Even in de help kijken.
ken ik niks in vinden. ik heb trouwens al geprobeerd gewoon de variabele naam erin te zetten maar dan werkt het niet. ik heb nu dit:
code:
1
CurrentDb.Execute "INSERT INTO temp (artikelcode, magazijn, datum, aantal) VALUES (artcode, magazijnvar, datumvar, aantalvar)"

Hail to the king baby!


  • urk_forever
  • Registratie: Juni 2001
  • Nu online
niemand??

hij werkt trouwens nou wel alleen voert ie null waardes in de tabel in en niet de waardes die ik wil

dit heb ik nu
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub artikelcode_BeforeUpdate(Cancel As Integer)
Dim artcodevar As Variant
Dim magazijnvar As Integer
Dim datumvar As Date
Dim aantalvar As Integer

artcodevar = Artikelcode.Value
magazijnvar = Magazijn.Value
datumvar = datum.Value
aantalvar = Aantal.Value

Text25.Value = artcodevar
Text27.Value = magazijnvar
Text29.Value = datumvar
Text31.Value = aantalvar

omschrijving.Value = Artikelcode.Value
CurrentDb.Execute "INSERT INTO temp (artikelcode, magazijn, datum, aantal) VALUES ('&artcodevar&', '&magazijnvar&', '&datumvar&', '&aantalvar&')"
End Sub

Hail to the king baby!


Verwijderd

Op donderdag 17 januari 2002 11:22 schreef urk_forever het volgende:

[..]

ken ik niks in vinden. ik heb trouwens al geprobeerd gewoon de variabele naam erin te zetten maar dan werkt het niet. ik heb nu dit:
code:
1
CurrentDb.Execute "INSERT INTO temp (artikelcode, magazijn, datum, aantal) VALUES (artcode, magazijnvar, datumvar, aantalvar)"
Dat je niks kan vinden lijkt me sterk Urker >:) maar je bent wel op de goede weg. Probeer iets in de trand van:
code:
1
2
3
4
5
  Dim strWaarde As String
  Dim intWaarde As Long
  strWaarde = "Dit is een test"
  intWaarde = 123456
  CurrentDb.Execute "INSERT INTO temp (tekst, getal) VALUES (""" & strWaarde & """, " & intWaarde & ")"

Als je zoiets lukt ga dan verder met parameters in SQL:
code:
1
  CurrentDb.Execute "INSERT INTO test (waarde) VALUES ($waarde)"

Moet je zelf maar verder zoeken hoe dit moet want ik heb geen Access bij de hand. Maar suc6.

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Op donderdag 17 januari 2002 13:42 schreef hvdberg het volgende:

[..]

Dat je niks kan vinden lijkt me sterk Urker >:) maar je bent wel op de goede weg. Probeer iets in de trand van:
code:
1
2
3
4
5
  Dim strWaarde As String
  Dim intWaarde As Long
  strWaarde = "Dit is een test"
  intWaarde = 123456
  CurrentDb.Execute "INSERT INTO temp (tekst, getal) VALUES (""" & strWaarde & """, " & intWaarde & ")"

Als je zoiets lukt ga dan verder met parameters in SQL:
code:
1
  CurrentDb.Execute "INSERT INTO test (waarde) VALUES ($waarde)"

Moet je zelf maar verder zoeken hoe dit moet want ik heb geen Access bij de hand. Maar suc6.
Ok, thanks dat werkt. Alleen snap ik niet waarom je bij die waardes eerst 3 " (quotes) moet hebben en daarna nog maar 1. Ik heb het nu zo gemaakt:
code:
1
CurrentDb.Execute "INSERT INTO temp (artikelcode, magazijn, datum, aantal) VALUES (""" & artcodevar & """, " & magazijnvar & ", " & datumvar & ", " & aantalvar & ")"

en dat werkt goed, alleen schrijft ie de datum waarde weg als 23-7-1894 ipv 17-1-2002 :?

Hail to the king baby!


Verwijderd

Op donderdag 17 januari 2002 14:19 schreef urk_forever het volgende:

[..]

Ok, thanks dat werkt. Alleen snap ik niet waarom je bij die waardes eerst 3 " (quotes) moet hebben en daarna nog maar 1. Ik heb het nu zo gemaakt:
code:
1
CurrentDb.Execute "INSERT INTO temp (artikelcode, magazijn, datum, aantal) VALUES (""" & artcodevar & """, " & magazijnvar & ", " & datumvar & ", " & aantalvar & ")"

en dat werkt goed, alleen schrijft ie de datum waarde weg als 23-7-1894 ipv 17-1-2002 :?
Die 3 quotes hebben wel degelijk een bedoeling, namelijk:
2 Om aan te geven dat je in de String één quote wilt gebruiken. Dit is gedaan omdat VB(A) zelf strings scheidt met een quote (").
Daarna komt er nog één quote om de String af te sluiten. Dit maakt het totaal van 3.

Die datum is een andere verhaal. Access slaat een datum/tijd als een getal op waarbij voor de komma alle dagen vanaf een bepaalde datum (ik geloof iets van 1578, Gregoriaanse kalender). Achter de komma wordt de tijd opgeslagen.
Het is dus niet mogelijk om een string zomaar in te voeren zodat dit een datum is.

Access Help biedt hier informatie over. En dat weet ik heel zeker. (zoek maar eens bij CDate)

Ben je trouwens een Urker of roeleert Urk gewoon iyho.

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
ik ben een echte urker!

Hail to the king baby!


  • urk_forever
  • Registratie: Juni 2001
  • Nu online
hmmmm, ik heb dat met die datum no ook goed, heb er gewoon nog twee extra quotes omheen gezet!

Hail to the king baby!


Verwijderd

Op donderdag 17 januari 2002 14:34 schreef urk_forever het volgende:
ik ben een echte urker!
Ik kijk nu pas naar je naam! Heb je m'n mail over breedband nog ontvangen, mwah, ik ga mijn email adres niet op forum publiceren.

Maar goed, dit wordt behoorlijk offtopic.

  • urk_forever
  • Registratie: Juni 2001
  • Nu online
Op donderdag 17 januari 2002 15:27 schreef hvdberg het volgende:

[..]

Ik kijk nu pas naar je naam! Heb je m'n mail over breedband nog ontvangen, mwah, ik ga mijn email adres niet op forum publiceren.

Maar goed, dit wordt behoorlijk offtopic.
en ik bekijk net jouw profiel, eerste mede urreker die ik hier tegen kom!

Hail to the king baby!

Pagina: 1