iwi121
Goto Top

Vba Fehler access 2003

Hallo zusammen, suche vba hilfe und komme nicht weiter... ich habe ein code einprogrammiert und bekomme immer die Fehlermeldung --> zwei parameter erwartet zuwenig parameter übergeben. die Felder sind mit Inhalt gefüllt , geprüft mit --> Debug.Print SQL... was mache ich verkehrt? hier mein code

Private Sub speichern_Click()
On Error GoTo Err_speichern_Click

Me.lblTest = Me.Liste2.Column(0)
Me.lblTest2 = Me.Liste2.Column(1)
Set db = CurrentDb
    SQLstr = "INSERT INTO Zwsp_Soll_SonstSchulung([Nachname], [Zuname]) " & _  
             "VALUES (" & Me.Liste2.Column(0) & ", " & Me.Liste2.Column(1) & " )"  
    MsgBox SQLstr, vbOKOnly
    If MsgBox("Sollen die Daten wirklich in der Tabelle angelegt werden?", _  
              vbYesNo + vbQuestion) = vbYes Then
        Debug.Print SQL
        CurrentDb.Execute SQLstr
      Else
        Exit Sub
    End If
Me.Liste6.Requery

Exit_speichern_Click:
    Exit Sub

Err_speichern_Click:
    MsgBox Err.Description
    Resume Exit_speichern_Click
    
End Sub

[Edit Biber] Codeformatierung, [/Edit]

Content-Key: 144853

Url: https://administrator.de/contentid/144853

Printed on: April 26, 2024 at 06:04 o'clock

Member: Tsocin
Tsocin Jun 15, 2010 at 09:53:04 (UTC)
Goto Top
Ist es möglich, dass deine Werte in Column(0) oder Column(1) ein Sonderzeichen enthalten? Probleme dürften ' und " machen.
Member: Biber
Biber Jun 15, 2010 at 10:20:18 (UTC)
Goto Top
Moin iwi121,

was hättest du denn an Debug.Print's Stelle ausgegeben anstatt einen Fehler?
Hättest du dir eine Variable "SQL" aus dem Reservekanister eingeschenkt?

Grüße
Biber
Member: iwi121
iwi121 Jun 15, 2010 at 10:27:42 (UTC)
Goto Top
Nein es sind keine Sonderzeichen... einfacher Text .... z.b. Column(0)=Schmidt und Column(1)=Ingo .....
ich glaube , das ich die zwei (" & Me.Liste2.Column(0) & ", falsch anspreche.
Gebe ich als VALUES 'D' ein, wird diese auch übergeben.... aber mit
VALUES (" & Me.Liste2.Column(0) & ", " & Me.Liste2.Column(1) & " )
klappt es nicht.
Hast du da eine Idee?
Danke im voraus.. Gruß Ines
Member: iwi121
iwi121 Jun 15, 2010 at 10:30:27 (UTC)
Goto Top
bin eben ein Anfänger face-wink
aber mit ner zündenden Idee kannst du auch nicht aufwarten , oder ???

Grüße Ines
Member: Biber
Biber Jun 15, 2010 at 12:19:35 (UTC)
Goto Top
Moin iwi121,

selbst an die Zeiten, in denen mir noch zündende ideen kamen, kann ich mich nur noch vage erinnern...

Wenn du meinst, es kann unmöglich an der nicht definierten Variable "SQL" liegen,
und es würde problemlos laufen, wenn du als Values 'D' eingibst..... hmm.
Okay, Anfängerglück.

Ohne auf dieses Glück zu vertrauen würde ich dennoch versuchen, diese Sollbruchstelle etwas systematischer einzukreisen.

1) Bitte gib doch die beiden "Me.Liste2.Column(0)" und...(1)-Werte auch per Debug.Print aus
2) -oder- Poste mal den erzeugten "SQLStr"... wir haben doch nichts davon, wenn der bei dir in einer MsgBox steht.
-3) Prüfe noch mal nach, ob hinter dem Zeilentrenn-Unterstrich in Zeile 10 auch tatsächlich das erforderliche Leerzeichen steht. der kann es nicht sein

4) Unabhängig vom Fehler Zähl mal durch, wie viele Variable du initialisierst/Werte zuweist und wie viele du davon verwendest.

Grüße
Biber
Mitglied: 27234
27234 Jun 15, 2010 at 15:07:55 (UTC)
Goto Top
Hallo,

ändere Zeile 8 wie folgt
"VALUES ("' & Me.Liste2.Column(0) & "', '" & Me.Liste2.Column(1) & "' )"   

Die beiden Variablen sind alphanumerische Werte, die Du noch in einfache Hochkomma "einpacken" musst.

Gruß René
Member: iwi121
iwi121 Jun 16, 2010 at 07:42:56 (UTC)
Goto Top
Hallo Bolle97,

das war die Lösung . Vielen Dank . Das Problem hat mich zwei Tage Nerven gekostet ... nu nimmer ...
also vielen Dank und schöne Woche noch ...

Grüße Ines