Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Schleife nach select

Begonnen von elvodia, Januar 04, 2012, 23:24:23

⏪ vorheriges - nächstes ⏩

elvodia

Guten Abend. Ich habe ein Abfrage die mir im Moment 3 Ergebnisse liefert nämlich 3 ID´s aus einer Tabelle. Ich möchte nun das bei diesen 3 Datensätzen 1 Feld auf True gesetzt wird. Leider kenne ich mich mit schleifen nicht aus bzw. habe ich bisher in vba nur Ergebnisse aus Abfragen gebaut wo ich definitiv nur 1 Ergebnis erhalte. Das heißt ich weis im Moment auch nicht wie ich mehrere Zeilen die die abfrage findet weiter verarbeite. Ich habe vieles gelesen und würde es auch hinbekommen die Ergebnisse in ein Listenwahl zu schreiben. Nur weiterverarbeiten kann ich sie nicht da ich den Code wie man das macht selber noch nicht kenne.

andlman

Guten morgen!

Ich mach das immer auf folgende weise:

Public Function BearbeiteQueryErgebniszeilen()
Dim db As DAO.Database
Dim qd As DAO.QueryDef
Dim rs As DAO.Recordset

Set db = CurrentDb()
Set qd = db.QueryDefs("AbfrageName")
Set rs = qd.OpenRecordset

If Not rs.EOF Then
  rs.MoveFirst
  Do Until rs.EOF
   'diverse Aktionen für
   'die einzelnen Ergebniszeilen
   rs.MoveNext
  Loop
End If

rs.Close
qd.Close
db.Close
Set rs = Nothing
Set qd = Nothing
Set db = Nothing
End Function


Vielleicht hilft das weiter...

lG andlman

MzKlMu

Hallo,
zu was eine Schleife?
Datenbanksprache zur Datenmanipulation ist SQL und nicht VBA.
Mache aus der jetzigen Auswahlabfrage eine Aktualisierungsabfrage und setze das gewünschte Feld auf -1 (True).

VBA brauchst Du dazu gar nicht.

Zeige bitte mal den SQL Text der jetzigen Abfrage.
Gruß Klaus

elvodia

Das versuche ich ja seit gestern aber access kommt dann immer mit dem Fehler.

Operation mus eine Aktualisierbare Abfrage verwenden.

MzKlMu

Hallo,
ZitatOperation mus eine Aktualisierbare Abfrage verwenden.
Dann ist es auch nicht möglich, die Werte der Abfrage per VBA Schleife zu ändern. Das führt zum gleichen Fehler. Du kannst noch nicht mal von Hand etwas in die Abfrage schreiben.
Das heist, die Abfrage ist der eigentliuche Knackpunkt.

Wie sieht denn die Abfrage aus?
Gruß Klaus