PDA

Vollständige Version anzeigen : Formular mit Tabellenerstellungsabfrage und anschließender Aktualisierungsabfrage


enfuego
27.01.2008, 01:47
Hi,

wie schafft man es, dass in einem Forumlar durch eine Befehlsschaltfläche=Button erst eine eine Tabellenerstellunserfrage ausgelöst wird und dann eine Aktualisierungsabfrage?
Also alles durch den Knopfdruck auf die Befehlsschaltfläche im Formular?

Danke,

enfuego

Lanz Rudolf
27.01.2008, 07:21
Hallo
Hast Du die zwei Abfrage schon definiert ?
oder möchtest Du diese in VBA-Code dinamisch erstelle ?
mit
Objekt.Execute Quelle, Optionen
sollte so was möglich sein
wobei Quelle Ein Vriable des Typ's String ist
Bsp. String auffüllen:
strSQL = "SELECT " & rsS!Name & ".* INTO " & rsS!Name & _
" IN " & Chr(34) & StrNeuePD & Chr(34) & _
" FROM " & rsS!Name & ";"
CurrentDb.Execute strSQL ' Aufruf

oder der name einer QueryDef
CurrentDb.Execute AbfrageXX ' Aufruf einer Abfrage

enfuego
27.01.2008, 10:49
Hallo,

die zwei Abfragen sind schon fertig und funktionieren auch, leider bin ich ein Anfänger und konnte mit dem von Dir geschriebenen nicht viel anfangen. Wie kann ich denn das ganze auf Access-Ebene machen, also ohne VBA-Code auskommen?

Vielen Dank,

enfuego

enfuego
27.01.2008, 11:11
Habs schon geschafft, brauchte ein Makro um das zu machen :-) Das einzig blöde ist nun das Access den aktualisierten Wert nur, nach klicken in die Zelle anzeigt, naja, man kann nicht alles haben...

achtelpetit
27.01.2008, 11:13
Ohne VBA kannst Du da gar nix machen. Aber der VBA-Code dafür ist kein Hexenwerk.
Das Ereignis für den Button heißt "beim Klicken" und der Code heißt dann ungefähr
docmd.open query "MeineAbfrage"
Um die Warnmeldung zu unterdrücken, die dann gewöhnlich erscheint, setzt Du vorher "docmd.setwarnings false" und um sie wieder einzuschalten setzt Du sie danach wieder auf true.
Um dem Protest der Profis zuvorzukommen: das ist nicht elegant, das ist auch nicht richtig profimäßig aber es funktioniert.

Lanz Rudolf
27.01.2008, 17:00
Hallo
Wenn Du das ganze jetzt mit einem Macro gemacht hast empfele ich Dir das in eine Function/Sub umzuwandeln

Warum sollten MAKROS vermieden werden?
Makros waren 1987 eine grossartige Erfindung:
Durch die Aufzeichnung von Programm-Aktionen konnte jeder Benutzer sein eigenes Programm schreiben und verändern.
Makros haben auch heute noch ihre Berechtigung, wenn Sie nur eine einfache Funktionalität benötigen und dafür nicht extra eine Applikation schreiben möchten.
Das Schreiben grösserer Makros erfordert eine Investition in Zeit und Anstrengung und die Wahrscheinlichkeit, dass sich diese Investition schnell in eine Fehlinvestition verwandelt ist sehr hoch.
Dafür sprechen mehrere Gründe, denn Makros:
erlauben keine Fehlerbehandlung,
können nicht debuggt werden,
sind unflexibel,
können nicht alles was eine (Rountine) SUB oder Function kann
sind in MDE-Dateien ungeschützt
Ausnahmen:
Das AUTOEXEC-Macro erlaubt die automatische Ausführung von Programmaktionen (meist Öffnung eines Formulares) beim Öffnen der Applikation (verwende ich wenn möglich auch nicht mehr).
Das AutoKeys-Makro erlaubt den Einsatz der Funktionstasten (z.B. F1 bis F12) in der gesamten Applikation.

Macro Konvertieren Schau HIER: http://www.ardiman.de/datenbanken/grundlagen/makros.html#SEC3