(Anfänger)Probleme bei Access

Hallo Leute!

Ich habe folgendee Probleme:
Ich hab in einer Tabelle für hunderte von Kunden deren Aufträge erfasst. Jetzt sollen (unter anderem) aus diesen Daten die Rechnungen zusammengebaut werden.
Nu habe ich eindeutige Auftragsnummern pro Datensatz, dem Kunden zugeordnet wird der Satz über die miterfasste Kundennummer und es muss natürlich vermerkt sein in welcher Rechnung dieser Auftrag rausging. Also drei wichtige Felder: AuftragsNr, KuNr, RgNr

Es sollen jetzt alle Auftragsnummern eines Kunden auf genau einer Rechnung mit genau einer Rechnungsnummer erfasst werden.

Wie kriege ich Access erklärt das er die Daten nach KuNr zusammenfassen und allen Datensätzen mit gleicher KuNr die gleiche RgNr zuweisen soll?
Und woher weiß ich wie die aktuelle RgNr lauten muss? Die Tabelle ist ja nicht danach sortiert, wie finde ich also raus welche RgNr schon vergeben sind?

Momentan versuche ich das Problem per Sourcecode zu lösen. Indem ich via Recordset und while Schleifenkonstrukt die Datensätze durchlaufe und das entsprechende Feld fülle… bloß fehlt leider die voherige Sortierung da er einen recordset.sort nicht ausführt und die Daten im recordset offensichtlich nicht genau wie in der Tabelle sortiert sind. So habe ich dann eben nicht genau eine RgNr sondern mehrere pro KuNr.

Für einen gänzlich anderen Lösungsvoschlag bin ich gerne zu haben - ich kenn mich bloß mit den von Access bereitgestellten Funktionen nicht aus.

Das ist das erste Problem, das zweite:
Wieso bringt folgende Abfrage doppelte Ergebnisse (also jeder Datensatz wird zweimal ausgegeben)?
SELECT (Verschiedene Felder aus verschiedenen Tabellen)
FROM TABDATA, TABKUNDE INNER JOIN TABRECH ON TABKUNDE.kunr = TABRECH.kunr
ORDER BY TABKUNDE.kunr;

Hoffentlich kann mir einer von euch weiterhelfen…

Danke schonmal

Einen Schritt weiter:
Ich könnte das RgNr Problem mit einer SELECT Max() Anweisung lösen, ich hab aber leider keine Ahnung wie ich sql Anweisungen im VBA Source code absetze. Ich hoffe das weiß einer von euch… Bitte gebt mir mal einen Hinweis

Moin, Jan,

Execute und RunSql sind in der VBA-Hilfe beschrieben.

Gruß Ralf

Hallo Jan,

Wie kriege ich Access erklärt das er die Daten nach KuNr
zusammenfassen und allen Datensätzen mit gleicher KuNr die
gleiche RgNr zuweisen soll?

das machst du direkt im Bericht mit einem Unterbericht

Und woher weiß ich wie die aktuelle RgNr lauten muss? Die
Tabelle ist ja nicht danach sortiert, wie finde ich also raus
welche RgNr schon vergeben sind?

??? könntest du mal GENAU hier beschreiben, welche Tabellen, mit welchen Feldern du hast? Die Beziehung der Tabellen wären auch interessant zu wissen.

Momentan versuche ich das Problem per Sourcecode zu lösen.

soweit ich da bis jetzt beurteilen kann: total überflüssig, das Ganze kann man mit einem Bericht OHNE eine Zeile Code erledigen!

Für einen gänzlich anderen Lösungsvoschlag bin ich gerne zu
haben - ich kenn mich bloß mit den von Access bereitgestellten
Funktionen nicht aus.

das kann man lernen :smile:

Das ist das erste Problem, das zweite:
Wieso bringt folgende Abfrage doppelte Ergebnisse (also jeder
Datensatz wird zweimal ausgegeben)?
SELECT (Verschiedene Felder aus verschiedenen Tabellen)
FROM TABDATA, TABKUNDE INNER JOIN TABRECH ON TABKUNDE.kunr =
TABRECH.kunr
ORDER BY TABKUNDE.kunr;

durch den INNER JOIN, diese ist ggf. falsch definiert, sprich verkehrt herum!?

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)