Hallo allerseits!
Ich möchte eine Tabelle füllen, die als erstes Feld ein Autowert-Feld hat.
Wie kann ich im VBA das lösen.
Ich denke den wert gebe ich ja nicht mit oder?
Vielen Dank für Eure Hilfe.
ZitatIch denke den wert gebe ich ja nicht mit oder?
Genau, das Feld lässt du aus der Feldliste raus, - wird ja autom.
gefüllt.
Access sagt aber Laufzeitfehler 3346.
Anzahl der Abfragewerte und Zielfelder stimmt nicht überein.
Oder liegt das an dem JA/Nein Feld in der Tabelle.
Das besetze ich mit False vor.
Hallo,
ZitatAnzahl der Abfragewerte und Zielfelder stimmt nicht überein.
Das ist doch eine eindeutige Fehlermeldung. Vergleiche (zähle) die Felder für die Zieltabelle und die Felder der Quelltabelle. Der Autowert darf in beiden nicht enthalten sein. Auch die Feldreihenfolge ist zu beachten.
Man könnte auch auf die Idee kommen, die Abfrage (SQL) hier zu zeigen.
Sorry
DoCmd.RunSQL "insert into tblInv values ('" & alter_titel & "','" & aktueller_titel & "', False) "
tblInv:
InvNr Autowert
Ort Kurzer Text
Platz Kurzer Text
InvErl Ja/Nein
Zitat von: tommytulpe am März 27, 2024, 17:29:00DoCmd.RunSQL "insert into tblInv values ('" & alter_titel & "','" & aktueller_titel & "', False) "
Die Feldliste der Tabelle darfst du nur dann weglassen, wenn du für alle Felder auch einen Wert übergibst. - Selbst dann halte ich das für eine ziemlich schlechte Idee, weil das SQL-Statement ohne gleichzeitig auf die Tabellendefinition zu schauen komplett aussagelos ist.
Also besser immer alles vollständig angeben:
INSERT INTO tabelle (Spalte1, Spalte2, SpalteN) VALUES (Wert1, Wert2, WertN);
Danke für die Info's.
Problem gelöst.