Hallo liebe Teilnehmerinnen und Teilnehmer des Forums,
Ich möchte eine Abfrage mit Makro öffnen, und zwar so, dass ein bestimmter Wert aus einem Textfeld in einem bestimmten Formular abgefragt wird.
Da ich gerade Access lerne, wäre ich für einen -klaren- Hinweis, Beispiel oder Link sehr dankbar.
Rokonszenves
Hallo,
bitte mal genauer erklären.
Ob du dazu überhaupt eine Abfrage brauchst ist auch noch nicht klar.
Und zu Makros wirst du eher keine Hilfe bekommen, denn Makros werden so gut wie nie bei Access verwendet. Du wirst dich mit VBA beschäftigen müssen.
Im Regelfall wird eine Abfrage auch nicht extra geöffnet. Eine Abfrage ist Datenquelle eines Formulars oder Berichts und wird nur darüber benutzt.
Halo Klaus,
Vielen Dank für dein Schreiben. Was ich eigentlich meine, kann ich an einem Beispiel beschreiben. Ich habe ein Suchformular gemacht und dort ist in einem Feld eine Zahl eingetragen. Es gibt mehrere Schaltflächen, die so definiert sind, dass, wenn man daraufklickt, sich eine Abfrage öffnet und den Wert anzeigt, den man gerade in das Suchformular eingegeben hat. Das funktioniert wunderbar.
Aber es hat einen Schönheitsfehler, nämlich für jede Abfrage muss ich eine separate Abfrage mit den einsprechenden Kriterien zur Verfügung stellen. Meine Frage ist eigentlich, wie kann ich die Kriterien in den Abfragen deklarieren? Dann würde ja nur eine Abfrage und für jeden Button ein Makro mit einem anderen Suchfeld (Textfeld) ausreichen.
Ich hoffe, dass ich meine Frage richtig beschrieben habe.
Danke und Gruss
Rokonszenves
Ich könnte es auch einfacher formulieren. Ich möchte eine Parameterabfrage so automatisieren, dass ich im Makro den Feldnamen angeben kann, wo sich der Wert je nach Suche immer ändert.
Wie ich schon geschrieben habe, mache ich gerade meine ersten Versuche mit Access und hoffe natürlich auf einige Erfolge.
Hallo,
in Access öffnet keine Abfrage direkt.
Binde das Formular an die ungefilterte Abfrage. Die Daen werden dann im Formular angezeigt.
Im Formularkopf legst Du Felder an (ungebunden) mit denen dann das Formular gefiltert wird.
Bitte zeige mal 2-3 Filterbeispiele (vollständig).
Und noch mal der Hinweis:
Du bekommst hier nur Hilfe zu VBA Code. Makros werden bei Access so gut wie nie verwendet.
Bei Access muss auch VBA und Macros unterschieden werden.
Hallo Klaus,
Vielen Dank für den Hinweis bzw. die Anfrage. Gerne gebe ich dir meine drei Beispiele.
Es gibt sechs Abfragen. Alle sechs können über Formulare mit Schaltflächen aufgerufen werden. Einmal mit dem Wert, der in «frm-Suchformular» Feld «Text1» steht. Oder mit dem Wert von «frm-1-Artikel anzeigen» Feld «ARTIKEL», schliesslich mit Parametern, wobei ich Parameter - in diesem Fall Artikel-Nr. - eingeben muss.
Hier sind die drei Kriterien:
[Formulare]![frm-Such-Formular]![Text1]
[Formulare]![frm-1-Artikel anzeigen]![ARTIKEL]
[ARTIKEL]
Wie geschrieben, es funktioniert. Da ich von jeder Abfrage, jedem Formular und jedem Bericht drei verschiedene Varianten haben muss, muss bei einer anfälligen Änderung an allen drei Stellen gemacht werden. Bei sechs Abfragen mal drei Varianten wird es zu gross, unübersichtlich und erscheint mir so dilettantisch.
Danke und Gruss
Rokonszenves
Hallo,
irgendwie liest Du nicht richtig. Du musst keine Abfragen aufrufen. Es wird einfach das Formular gefiltert.
Du brauchst auch mit ziemlicher Sicherheit keine jeweils 3 Varianten.
Es ist auch immer noch nicht klar, ob Makro oder VBA Code.
Zeige mal ein Bild es Beziehungsfensters.
Hallo Klaus,
Diese ist eine Abfrage, Variante drei. (es gibt davon eine ungefilterte, eine mit Parameter "Artikel", eine (diese) mit Suchfeld 1 und eine mit Suchfeld 2)
Makro oder VBA, deine Frage kann ich noch nicht beantworten. Mit welcher Methode kommt man schneller zum Ziel? Makro könnte einfacher sein. Da ich in den letzten Tagen immer mehr über VBA gelesen habe, scheint der Weg steiniger zu sein.
Danke und Gruss
Rokonszenves
Hallo,
ZitatDa ich gerade Access lerne,
Wenn Du so weiter lernst, lernst Du Access völlig falsch.
Das gezeigte Bild ist auch kein Beziehungsbild, sondern das Bild das Abfrageentwurfs, mit Beziehungen hat das nichts zu tun. Die im Bild zu sehenden Verknüpfungen zwischen den Tabellen lässt auch vermuten, dass keine Beziehungen angelegt wurden.
Beziehungen laufen auch immer über den Primärschlüssel (ID) und einen extra Fremdschlüssel in den in abhängigen Tabellen. Bei den Beziehungen ist auch referentielle Integrität einzustellen.
In einer korrekt aufgebauten Datenbank wirst Du auch mit Sicherheit keine verschiedene Versionen von Abfragen und Formularen brauchen, nur weil sich ein Kriterium ändert. Für die Formulare nimmt man
eine ungefilterte Abfrage zur Anzeige über ein Formular und filtert dann das Formular.
Habe ich schon mehrfach geschrieben, bist Du aber nicht weiter darauf eingegangen.
ZitatMakro oder VBA, deine Frage kann ich noch nicht beantworten.
Wie ich bereits geschrieben habe, kommt nur VBA in Frage. Zu Makros bekommst Du hier keine Hilfe.
Mit der aus dem Bild zu erkennenden Aufbau der DB wirst Du nicht weit kommen, das ist so falsch.
Du solltest Dir die Grundlagen zu Access aneignen und dann noch mal neu anfangen.
Hier mal 2 Links:
https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/
https://www.access-tutorial.de/
Hallo Klaus,
erst mal sorry wenn ich dich nerve.
Danke für den Link, jetzt wird mir langsam klar, was eine Beziehung ist. Ich habe tatsächlich keine definiert.
Du hast ja ein Formular mit Filter empfohlen, aber ich weiss nicht wie. Ich habe ein Buch «Access von Einsteiger» (von Bildner TV) und schaue hier und da im Internet wie es geht. Da dies mein allererstes Access-Projekt ist und ich keinen Kollegen habe, mit dem ich darüber diskutieren kann, mache ich alle Anfängerfehler.
Danke und Gruss
Rokonszenves
Hallo,
Zitaterst mal sorry wenn ich dich nerve.
Keine Sorge, Du nervst nicht. Ich melde mich dann schon, wenn es soweit ist. ;D
ZitatIch habe ein Buch «Access von Einsteiger»
Ich habe mir mal die Leseprobe des Buches angesehen. Wenn Du dem Buch gefolgt wärst, hätte eigentlich das was Du im Bild in Beitrag #7 gezeigt hast nicht rauskommen dürfen. Das entspricht noch nicht mal ansatzweise den Hinweisen im Buch.
ZitatDu hast ja ein Formular mit Filter empfohlen, aber ich weiss nicht wie.
Es macht keinen Sinn sich zum jetzigen Zeitpunkt mit Formularen zu beschäftigen. Erst muss die Tabellenstruktur (=Datenmodell) stimmen, dann erst kommen die Formulare.
Erstelle also mal die Tabellen und lege dann Beziehungen an (mit referentieller Integrität). Dieses Beziehungsbild zeigst Du dann mal hier.
Im Bild sollten die Tabellen so groß aufgezogen werden, dass man alle Felder sieht.
Hallo Klaus,
In diesem Buch wurde die Mitgliederdatenbank selbst erstellt und natürlich beispielhaft aufgebaut. Ich hingegen habe ein stillgelegtes ERP-System, aus dem ich die Tabellen extrahiert habe. (Von SQL mit Tabellenverknüpfungsmanager) Mein Ziel ist es z.B. Artikel Verwendungsnachweis (Beitrag 7) Stückliste, Lieferant zu Artikel...usw. anzeigen zu lassen.
Bis gestern habe ich nicht gemerkt, dass Beziehungen und Verknüpfungen zwei verschiedene Dinge sind. Heute bin ich dabei zu verstehen, wie die Beziehungen in meinen Tabellen sein können.
Danke für Deine Zeit.
Gruss
Rokonszenves