VBA: Ersetzen in einer Spalte

05/02/2009 - 13:44 von Raphael Boos | Report spam
Hallo!

Hab da ein kleines Problem:

Ich habe eine Tabelle ("Mitarbeiter").
Diese hat mehrere Zeilen und mehrere Spalten.
Die Zeilenanzahl kann sich veràndern (da die Tabelle importiert wird).
Die Spaltenanzahl betràgt 12.
Die wichtige Spalte ist die 8.
Diese Spalte heisst "Inaktiv".
In dieser Spalte hat es in den Zellen entweder ein "Ja" oder ein "Nein".

So, nun das, was ich will:
Es soll diese Spalte durchgehen und das "Ja" durch ein "-1" und das "Nein"
durch ein "0" ersetzen. Wie kann ich also machen, das jede Zelle automatisch
mit der richtigen Nummer ersetzt wird?

Ich habe da an eine For-Next Schleife gedacht:

For I=0 To AnzahlFelder - 1

oder so was, komm da aber nicht weiter.

Ich hoffe, jemand kann mir helfen.

Mit freundlichen Grüssen
Raphael Boos
 

Lesen sie die antworten

#1 Stefan Hoffmann
05/02/2009 - 13:53 | Warnen spam
hallo Raphael,

Raphael Boos schrieb:
Es soll diese Spalte durchgehen und das "Ja" durch ein "-1" und das "Nein"
durch ein "0" ersetzen. Wie kann ich also machen, das jede Zelle automatisch
mit der richtigen Nummer ersetzt wird?


Imho macht das keinen Sinn.

Importiere zuerst in eine Importhilfstabelle und dann kannst du mit
einer Abfrage denn Wert ermitteln:

SELECT LCase(Trim([Inaktiv])) = "ja" AS boolInaktiv
FROM [Mitarbeiter]

Ansonsten kannst du mit

UPDATE [Mitarbeiter]
SET [Inaktiv] = IIf(LCase(Trim([Inaktiv])) = "ja", -1, 0)

ersetzen, z.b.

Dim SQL As String

SQL = "UPDATE [Mitarbeiter] " & _
"SET [Inaktiv] = IIf(LCase(Trim([Inaktiv])) = 'ja', -1, 0)"
CurrentDb.Execute SQL, dbFailOnError


mfG

Access-FAQ http://www.donkarl.com/
KnowHow.mdb http://www.freeaccess.de
Newbie-Info http://www.doerbandt.de/Access/Newbie.htm

Ähnliche fragen