vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Problem mit "For Each ..... Next" -Anweisung 
Autor: Silvio22
Datum: 12.11.03 17:18

Hallo Leute,

diesmal muß ich euch mit einem ungewöhnlichen Problem mit meiner Schleife
konfrontieren.
Ich habe einen Bericht, dessen Recordsource-Eigenschaft ich erst beim Öffnen setze (SQL-String).
Der Bericht enthält Daten aus zwei Tabellen, eine Haupt~ und eine Untertabelle, die 1:n miteinander verknüpft sind.
Gruppiert wird in dem Bericht nach allen Treffern des SQL-Strings in der Haupttabelle.
Die entsprechenden, zugehörigen Datensätze der Untertabelle bilden dann den Detailbereich einer jeden Gruppe.
Soweit nichts besonderes.... Aber:

Die Ergebnissmenge der SQL-Abfrage aus der Haupttabelle besteht aus Datensätzen,
die beim Speichern sowohl als "neu", als auch "alt" tetuliert wurden. (völlig gemischt)
Das Problem ist nun, dass die Daten aus der Untertabelle immer andere sein müssen, je nachdem, ob der zugehörige Datensatz aus der Haupttabelle als "alt" oder "neu" gespeichert wurde.

Ich habe mir überlegt, daß ich die Ergebnissmenge der SQL-Abfrage der Haupttabelle mit einer "For Each ... next"-Anweisung durchgehe, und mir dann die Daten aus Untertabelle in Abhängigkeit von "alt" oder "neu" zusammenstelle.

[u]Das Gerüst schaut dann so aus:

Dim strKTR As String
Dim strSQLGrund As String
Dim strSQLAufbau As String
 
strKTR = InputBox("Suche nach .... ?", "Suchen")
 
strSQLGrund = "Select * From Haupttabelle Inner Join Untertabelle ON _ 
         Haupttabelle.XXX = Untertabelle.XXX Where Haupttabelle.XXX = '" &" & _
         "strKTR & "'"
Soweit ist alles OK, eine einfache SQL-Syntax, aber jetzt geht´s los:
'Jeden Datensatz der Ergebnismenge des SQL-Strings anschauen....
For Each ???" in "ErgebnismengeDesSQLStrings"
 
   'Wenn ??? = "alt", dann....
   If ??? = "alt" then
 
    '... nehme die Positionen 1 bis 150 aus der Untertabelle...
    strSQLAufbau = strSQLGrund & " AND Where Untertabelle.Pos BETWEEN 1 AND 150
 
    'Wenn ??? = "neu", dann....
    ElseIf ??? = "neu" then
 
     '.... nehme nur Positionen 1 bis 75 aus der Untertabelle....
     strSQLAufbau = strSQLGrund & " AND Where Untertabelle.Pos BETWEEN 1 AND 75
 
     End If
 
Next
 
Me.Recordsource = strSQLAufbau
Wer kann mir sagen, ob das so funktionieren würde, oder wer weiß, wie man es besser machen könnte.
Außerdem bereitet mir der Aufbau der "For Each .... next"-Anweisung große Probleme.
Vielleicht kann mir hierbei auch jemand behilflich sein.

Ich freue mich über jede Hilfe und sage schon einmal herzlichen Dank dafür....

Liebe Grüße
Silvio
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Problem mit "For Each ..... Next" -Anweisung427Silvio2212.11.03 17:18
Re: Problem mit "For Each ..... Next" -Anweisung260ModeratorDieter12.11.03 17:26
Re: Problem mit "For Each ..... Next" -Anweisung288Silvio2212.11.03 18:24
Re: Problem mit "For Each ..... Next" -Anweisung240ModeratorDieter12.11.03 18:32
Re: Problem mit "For Each ..... Next" -Anweisung299Silvio2212.11.03 18:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel