Datenbankanalyse, Datenbanknavigation

05/05/2009 - 14:35 von Boas Steiner | Report spam
Hallo zusammen

Ich möchte eine Tabelle analysieren. Da ich bis jetzt nur Exel programmiert
habe, benötige ich bitte eure Hilfe.

Ich habe eine Tabelle mit den drei Spalten:
Zàhler(ID Autowert); Textwerte(Text); Suchresultate(Byte)

Ich möchte die Textwerte mit If Then und Is Like analysieren. Den
Vergleichswert hole ich aus mehreren Textfeldern in einem Formular.

Wenn ein Textwert mit dem Vergleichswert übereinstimmt, möchte ich in die
Spalte Suchresultate eine Zahl einsetzen (Damit kann ich jeden Datensatz
kategorisieren: 0=nichts gefunden, 1=Alle Bedingungen erfüllt, 2=Eine der
Bedingungen erfüllt, 3=Ähnlich, ...)


Dies sieht dann so aus: (Nach der Abfrage mit Vergleichswert="Zürich")

Zàhler Textwerte Suchresultate
1 Zürich 1
2 Bern 0
3 Basel 0
4 Zurich 3


Danach kann ich drei Abfragen erstellen, mit je der Bedingung =1; =2; =3.


Schlussendlich habe ich eine komplexe Suchmaschine mit kniffligen
Bedingungen wie (Mehrere Vergleichswerte müssen erfüllt sein; Mindestens ein
Vergleichswert muss vorhanden sein; und dann noch die Ähnlichkeitssuche)



Wie gehe ich dabei vor? So würde ich es im Exel machen:


Sub Analyse()
Dim Temp01 as Long

Temp01=1
for i = 1 to 4

If Range("B" & Temp01)="Zürich" Then
Range("C" & Temp01)=1
Else
Range("C" & Temp01)=0
End if

Temp01=Temp01+1
next i
End Sub


Doch wie funktioniert die Datenbanknavigation im Access? Da gibt es das
Worksheet("Tabellenname: z.B. "Tabelle1" ") und das Range("Feld: z.B. "B2" ")
nicht.

Ich bitte Euch um eure Hilfe.

Vielen Dank
Gruss Boas
 

Lesen sie die antworten

#1 Jens Schilling
05/05/2009 - 15:09 | Warnen spam
Hallo, Boas

Boas Steiner wrote:
Hallo zusammen

Ich möchte eine Tabelle analysieren [...]



Nö, so ist es etwas unpràzise - Du möchtest schon mehr, nàmlich gleichzeitig
Daten veràndern ;-)

Wie gehe ich dabei vor?



Mengenorientiert - und dafür steht Dir SQL zur Verfügung.

Ein einfaches Statement könnte etwa so aussehen:

Update Tabelle1 Set Suchresultat = 1 where Textwert = "Zürich"

Kopiere dies einmal in der SQL-Ansicht in eine neue Abfrage, und passe
Tabellen- und Feldnamen an, dann wird's verstàndlicher.

Solltest Du aber tatsàchlich Gründe haben, die Datensàtze àhnliche wie in
Deinem Code-Beispiel durchlaufen zu wollen/müssen, schau einmal in der
VBA-Hilfe nach dem Stichworten Recordset, Move, Edit und/oder Update. Oder
frag einfach nach ...

Gruss
Jens

Ähnliche fragen