PDA

Vollständige Version anzeigen : Feld A nach B kopieren


tetex
31.05.2012, 08:33
Hallo,

wie kann ich am besten von der Tabelle1 (FeldA) nach Tabelle(FeldF) kopieren ?

mfg

Maxel
31.05.2012, 08:38
Hallo,

Ich nehme an, Du meinst den Feldinhalt. Nimm eine Aktualisierungsabfrage.

tetex
31.05.2012, 08:47
wie meinst du das?

Tabelle ist ja leer ich muss da die werte von der Tabelle1 kopier kopieren bzw. importieren


mfg

Maxel
31.05.2012, 08:51
Tabelle ist ja leer
heißt

Es fehlt noch das bewusste Feld?
Das bewusste Feld ist noch nicht gefüllt?

tetex
31.05.2012, 09:13
Genau!

CurrentDb.Execute ("INSERT INTO tabelle1 SELECT * FROM tabelle")

so bekomme ich den kompletten inhalt
aber 1:1

beide tabellen haben anderen Feldnamen
daher wollte ich gezielt von der Tabellen(Feld) kopieren


mfg

Josef P.
31.05.2012, 09:19
Hallo!

Insert-Syntax:
Insert into tabelle1 (FeldX) select FeldY from tabelle

mfg
Josef

tetex
31.05.2012, 09:27
hallo,

ich bekomme ein Laufzeitfehler 3134

Syntaxfehlert in der Insert into-Anweisung

CurrentDb.Execute ("INSERT INTO Tabelle (FeldA) select FeldB from Tabelle1")

Thomas Möller
31.05.2012, 09:31
Hallo!

Syntaxfehlert in der Insert into-Anweisung

Wie wäre es denn, wenn Du Dir die Aktualisierungsabfrage im Abfrageeditor erstellst. Wenn dort alles funktioniert, wechselst Du in die SQL-Ansicht und kopierst den SQL-String in den VBA-Code.

CU

Josef P.
31.05.2012, 09:33
CurrentDb.Execute ("INSERT INTO Tabelle (FeldA) select FeldB from Tabelle1")
ich erkenne hier keinen Syntax-Fehler (bis auf das unnötige Einklammern des Textes.)
Sieht dein Code im VBA-Editor exakt so aus?

mfg
Josef

tetex
31.05.2012, 09:43
Josef.P,

sieht genauso aus.
Ich hab mit der Aktualisierungsabfrage nie gearbeitet
in der Abfrage sehe ich kein eintrag

Josef P.
31.05.2012, 09:46
Hallo!

sieht genauso aus
... im Sinne von identisch - also mit identischen Tabellen- und Feldnamen?
Dann kann ich dir leider nicht weiterhelfen, da diese SQL-Anweisung korrekt ist.

/edit:
Ich hab mit der Aktualisierungsabfrage nie gearbeitet
Eigentlich willst du doch eine Anfügeabfrage erstellen, oder?
Anm.: Aktualisierungsabfrage wäre eine Update-SQL-Anweisung.

mfg
Josef

tetex
31.05.2012, 09:55
ah,

ich glaub ich habs
es wird
tabellenname sieht anders aus ( feld-A ) bindestrich macht fehler.

Josef P.
31.05.2012, 09:57
grrrrr ... ;) (Ich frage ja nicht umsonst um die exakte Schreibweise.)
Wenn man einen Syntax-Fehler erhält und dann eine angepasste SQL-Anweisung zeigt, ist das nicht besonders hilfreich für eine Fehlersuche.

CurrentDb.Execute "INSERT INTO [Tabelle-A] ([Feld X]) select [Feld-Y] from [Tabelle B]", dbfailonerror

mfg
Josef

tetex
31.05.2012, 10:00
Wenn ich mehrere Felder kopieren möchte
CurrentDb.Execute ("INSERT INTO Tabelle (FeldA, FeldC) select FeldB,FeldC from Tabelle1")

so machen ?

Josef P.
31.05.2012, 10:02
so machen ?
Ich wage nicht mit "Ja" zu antworten, sonst gibt es wieder einen Syntax-Fehler. :D :D :D

Die Syntax der SQL-Anweisung aus deinem Beitrag #14 stimmt aber. ;)

mfg
Josef

tetex
31.05.2012, 12:53
Hallo,

es klappt also Wunderbar.
Jedoch habe ich ein Problem
Wenn ich Felder per Formular änder
wird zwar gespeichert sobald ich daten wieder importiere sind sie weg. "logisch"

kann ich das irgendwie umgehen ?
evt mit UPDATE?

mfg