Zugriff auf zwei Tabellen aus Formular

Hallo Experten,

ich bin gerade dabei eine kleine Datenbank zu erstellen und komme jetzt irgendwie nicht mehr weiter.

Folgendes Problem:

Ich habe eine Excel-Tabelle mit knapp 7000 Zeilen.
Es gibt in der Excel-Tabelle eine Spalte (Artikelnr) in der „eigentlich“ Artikelnummern aus 5- 7 Stelligen Nummern bestehen. Es gibt jedoch darunter auch einige Artikelnummern, die vor der 7 stelligen Nummer noch den Text „A-X“ drinstehen haben. Also z.b. A-X1234567. So nun habe ich ein kleines Makro erstelt, damit es mir die Zeilen mit A-X- Artikeln in eine andere Tabelle ausschneidet, damit diese getrennt von den normalen Artikeln sind. Dabei entferne ich dieses A-X vor der Artikelnr damit es im Access zu keinen Import fehlern kommt. Das A-X soll später im bericht wieder dazugehängt werden, bevor der Bericht gedruckt wird.

Nun importiere ich diese beiden Tabellen in Access. Klappt wunderbar. Ich habe ein Formular erstellt, mit dem ich nach bestimmten Sachen wie Artikelnr suchen kann. Damit nicht nur in einer Tabelle gesucht wird, (bei datenherkunft kann ja nur eine tabelle angegeben werden) habe ich eine Abfrage erstellt die mir die beiden Tabellen als gesamttabelle praktisch untereinander anzeigt. Ich kann auch wunderbar über mein Formular suchen und finde auch Artikel von beiden Tabellen. Nun habe ich aber im Formular einen Button, über den ich in meinen zuvor erstellten Bericht gelage, welches mit den aktuell angezeigten Datensätzen aus dem Formular gefüllt ist. Die übergabe der Formular-Daten in den Bericht läuft über die ID, welche in beiden Tabellen einfach die Fortlaufende Nummer ist (=primärschlüssel). Da das formular aber auf meine Abfrage zugreift und dort die ID der ersten tabelle von 1 bis 6377 geht und dann wieder von 1 bis 566 (ID von tabelle 2) funktioniert die übergabe nicht mehr richtig. Ist ja logisch weil es die IDs 1 bis 566 doppelt gibt. D.h. wenn ich z.b . gerade im formular bin bei datensatz 6500 und auf bericht-button klicke, ist mein bericht falsch ausgefüllt, weil die ID ja nicht stimmt.
Sprich, der Bericht ist mit daten aus der ersten Tabelle gefüllt obwohl ab datensatz 6377 schon daten aus der Tabelle2 drin stehen sollten.
Wie kann ich also mit meinem Formular auf beide Tabellen zugreifen damit auch die übergabe vom furmular zum Bericht richtig funktioniert. Wichtig ist halt, das tabelle1 und tabelle 2 irgendwie getrennt sind, weil bei der 2 tabelle ja diese A-X artikel sind wo ich wieder diesen Text „A-X“ im Bericht noch vor dem Drucken anhängen muss.

Ich hoffe ich habe es einigermaßen verständlich erklärt und hoffe ihr könnt mir helfen.

Vielen Dank im Voraus!

Du könntest ein VBA Script schreiben und dies mit Hilfe
eines Recordsets bewerkstelligen. In einem Recordset steht
im großen und ganzen nichts anderes drin als das Ergebnis einer
SQL Abfrage. Also kannst du auch nur auf eine Tabelle zugreifen
und daraus den Bericht generieren. Ich hoffe, ich habe dich mit diesen Begrifflichkeiten nicht verschreckt. :smile: Wie der Code ist, weiß ich allerdings jetzt auch nicht aus dem Kopf, werde ich aber gerne bei Gelegenheit nachschauen.
Wenn Du viel mit Excel oder Access arbeitest, empfehle ich dir
auch folgendes Forum:
http://www.ms-office-forum.net/forum/

Die haben sich auf solchen Probleme spezialisiert. Hilfe habe ich dort auch oft genug erhalten. :smile:

Bin leider im Moment ziemlich mit meiner Diplomarbeit beschäftigt, ansonsten würde ich es dir schreiben.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Dj,

klingt nicht sehr einfach :wink:
Mit VBA habe ich noch nicht wirklich was gemacht.
Du schreibst, ich könnte über den Recordset auf „nur eine“ Tabelle zugreifen. Ich muss ja aber über mein Formular meine „beiden“ Tabellen durchsuchen. Und wenn dann z.B. der Artikel, den man sucht gefunden wurde und man auf den „Bericht-Button“ drückt, sollten die ganzen Feldinhalte die zu der gefunden Artikelnr gehören in meinen Bericht übernommen werden und dort soll dann bei den A-X Artikeln (Tabelle2) dieser Text „A-X“ vor die Artikelnr angehängt werden, bevor man den Bericht ausdruckt.
Ich bin jetzt mittlerweile etwas weitergekommen:
Habe nun alle Artikelnr (normale als auch diese A-X) in einer Tabelle. Dann hab ich noch eine neue Spalte hinzugefügt (Kennung). Bei den normalen Artikelnr steht immer ein „A“ drin bei den A-X ein „B“. Die ID wird von Access beim importieren der exceltabelle als Primärschlüssel fortlaufend von der ersten zeile bis zur letzen Zeile generiert. Ich greife mit meinem formular auf diese Gesamttabelle zu, funktioniert einwandfrei, der gefeundene Datensatz (egal ob A oder B Artikel) wird mir in meinen Bericht korrekt übertragen, nur fehlt mir jetzt, dass im bericht bei den B artikeln (A-X Artikel) dieser Text „A-X“ vor die Artikelnr hinzufügt. Aber auch nur bei den B artikeln. Bei den A- Artikeln soll ja nur die Nummer angezeigt werden. Und hier stecke ich jetzt fest…
Ich hoffe du verstehst was ich meine :smile:
Ist nicht ganz einfach zu erklären, zu verstehen wahrscheinlich noch schwieriger.

Danke!

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]