PDA

Vollständige Version anzeigen : Aktualisierung


Kigo
04.05.2001, 14:58
Hallo Leute!
Ich möchte gerne eine Aktualisierung eines Feldes meiner Tabelle erreichen.
In diesem Feld stehen verschiedene Länderkürzel ("I" für Italien, "D" für Deutschland ...).
Mit einer Aktualisierungsabfrage ist es aber (meines Wissens) nur möglich diese Kürzel nacheinander (durch manuelles ändern) zu aktualisieren.
Das möchte ich aber automatisch durch VBA für alle Kürzel in einmal erledigen.
Kann mir jemand helfen?

Manuela Kulpa
05.05.2001, 12:29
<font face="Verdana" size="2">Hallo Kigo!

Hier muss VBA eigentlich nicht eingesetzt werden :)! Mit ein paar „kleinen“ Vorarbeiten, kannst du die Aktualisierung recht einfach erledigen!

Als erstes erstellst du dir eine Tabellenerstellungsabfrage, die z.B. folgendermaßen aussehen könnte:

<font face="Courier New" size="2">SELECT DISTINCT Land AS fsCountryKey, "" AS fsCountryName INTO tblKeyCountryKey FROM Kunden</font>

Ich beziehe mich hier auf die Tabelle Kunden der Nordwind-DB (solltest du auf deine Gegebenheiten umändern). Bei dieser Abfrage werden die Länderkürzel (Feld Land) ins Feld fsCountryKey der “neuen” Tabelle tblKeyCountryKey angefügt. Zudem wird noch ein weiteres leeres Feld fsCountryName erstellt (für die spätere Ergänzung des Langtextes). Das Schlüsselwort DISTINCT bewirkt, dass doppelt vorhandene Daten nur einmal erscheinen.

Anschließend bearbeitest du die Tabelle tblKeyCountryKey, indem du zum einen den Primärschlüssel auf das Feld fsCountryKey legst (je nachdem, solltest du die Feldgröße der Felder verändern), zum anderen ergänzt du nun das Feld fsCountryName um den jeweiligen Langtext des Länderkürzels.

Nun erstellst du dir eine Aktualisierungsabfrage, die folgendermaßen aussehen könnte:

<font face="Courier New" size="2">UPDATE tblKeyCountryKey INNER JOIN Kunden ON tblKeyCountryKey.fsCountryKey = Kunden.Land SET Kunden.Land = fsCountryName</font>

Führe die Abfrage aus und schwups hast du deine Länderkürzel „auf einen Schlag“ mit nur einer Aktualisierungsabfrage verändert.

Falls du Fragen zur Umsetzung hast, melde dich und ich schicke dir eine kleine Beispiel-DB zu.

Gruss</font>

Kigo
07.05.2001, 15:33
Vielen Dank Manuela!

Deine Hilfe hat mir sehr weitergeholfen.

Holger