Gegeven uit combobox schrijven naar tabel

Status
Niet open voor verdere reacties.

boule

Gebruiker
Lid geworden
20 jan 2011
Berichten
42
beste helpers,

probleem :

In het startscherm van een toepassing worden de variabelen getoond in een combobox.
Als er een van de variabelen (clubnaam) wordt gekozen wordt er verwacht dat de gebruiker de toegangscode van die club ingeeft.
Deze toegangscode wordt gecontroleerd met de toegangscode in de combobox (niet zichtnaar) en als deze goed is wordt de naam van de gebruiker getoond.( staat ook in een niet zichtbaar veld in de combobox.

Dit gaat allemaal goed.

Voor de verdere werking van het startscherm wil ik de clubcode (die ook voorkomt in de combobox) schrijven naar een controletabel die ik dan later bij bepaalde bewerkingen kan controleren. ( bv wijzigen van clubgegevens alleen door de clubvertegenwoordiger)

Het lukt mij niet om de clubcode weg te schrijven.

Het gebeurt in de volgende routine :


Code:
If controle = administrator Or controle = toegangscode Then
       CurrentDb.Execute "ToegangOK"
       If controle = administrator Then
              Text17 = "administrator"
       Else
              Text17 = Me.Combo15.Column(4)
       End If
       CurrentDb.Execute "Schrijfclubcode"
Else

Het gaat fout bij de "Schrijfclubcode" deze geeft fout melding : To few parameters : expected 1

De inhoud van de query "Schrijfclubcode"
is

UPDATE controlwerking SET controlwerking.Waarde = [Clubs].[Club]
WHERE (((controlwerking.Identificatie)="Clubcode"));

Wie kan mij helpen of op de goede weg helpen

bij voorbaat dank

Boule
 
Laatst bewerkt door een moderator:
Zolang we niet weten wat "Schrijfclubcode" doet, kunnen we er weinig van zeggen. Al vermoed ik dat het een query is. Zelf zou ik er een INSERT INTO query voor gebruiken, die je geheel in VBA opbouwt. Dan werkt Execute prima.
 
Michel,

De schrijfclubcode query zou de waarde uit de database Clubs uit het veld Club moeten halen en deze waarde schrijven naar een record in Control werking.

Het vreemde is dat als ik een vaste waarde gebruik bv

UPDATE controlwerking SET controlwerking.Waarde = "120"
WHERE (((controlwerking.Identificatie)="Clubcode"));

dan wordt er wel 120 in Waarde van de database controlwerking gezet.

Het Club bestand staat Open.

De Currentdb.execute Toegangscode die er bovenstaat gaat ook goed

vast bedankt

Boule
 
Om even te laten zien hoe ingewikkeld jij denkt, en hoe simpel het kan:
Code:
Dim strSQL As String
strSQL = "UPDATE controlwerking SET Waarde = 120 WHERE Identificatie='Clubcode'"
CurrentDb.Execute strSQL
Deze zou moeten werken overigens; kan die query weg ;)
 
Michel,

De strSQL die je hebt gestuurd is (dacht ik) een andere manier om de waarde 120 weg te schrijven.
Mijn probleem is echter dat er een variabele waarde moet komen te staan welke wordt gehaald uit een combobox waarin de database Clubs staat.

Bij gebruik van jouw voorbeeld zou dan de regel kunnen zijn

Dim strSQL As String
strSQL = "UPDATE controlwerking SET Waarde = [Clubs].[Club] WHERE Identificatie='Clubcode'"
CurrentDb.Execute strSQL

??

Ik zal dit proberen


vast bedankt voor je hulp

boule
 
Jammer genoeg zit je nu op het verkeerde paard :). Uiteraard kan het (doe het namelijk altijd zo).
Code:
strSQL = "UPDATE controlwerking SET Waarde = " & Me.club.Value & " WHERE Identificatie='Clubcode'"
 
Hallo Michel,

Je hebt enorm geholpen
Het enige was de aanpassing van de de waarde,
Ik heb jouw voorbeeld veranderd in onderstaande instructie en het werkt nu perfect.

strSQL = "UPDATE controlwerking SET Waarde = " & Me.Combo15.Column(1) & " WHERE Identificatie='Clubcode'"
CurrentDb.Execute strSQL

Omdat ik dat controlbewerkingsheet in meer forms wil toepassen brengt dit mij weer een stuk verder.

Nogmaals bedankt

Boule
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan