7.7k Aufrufe
Gefragt in Datenbanken von lefty04 Mitglied (183 Punkte)
Hallo,

ich habe in einer Access DB (2003) mehrere Anfügeabfragen und da ich ja ein fauler ;) Mensch bin möchte ich diese nicht einzeln ausführen sondern alle aufeinmal per Mausklick.

Geht das? Habe bis jetzt immer nur Lösungen mit VB-Programmieren gefunden und da liegt nicht gerade meine Stärke.

Gruß Lefty

7 Antworten

0 Punkte
Beantwortet von lefty04 Mitglied (183 Punkte)
....achja, kleine Ergänzung noch:

Wenn möglich dann sollten auch diese Zwischenfragen:

"Sie beabsichtigen eine Anfügeabfrage auszuführen, die ihre....BLA BLA BLA"

oder

"Sie beabsichtigen 235 Zeilen anzufügen..."

Kann man diese Zwischenfragen dann NICHT für jede Abfrage erscheinen lassen???

Gruß L.
0 Punkte
Beantwortet von papa39 Mitglied (205 Punkte)
hi

statt VBA kannst Du auch ein Makro laufen lassen.
Im Makro heißt die Anweisung: ÖffnenAbfrage

Die Zwischenabfragen kommen nicht mehr, wenn Du in
Extras-Optionen-Bearbeiten die Haken bei "Bestätigen-Aktionsabfragen" und "Bestätigen-Datensatzänderungen" rausnimmst.

Gruß
Volker
0 Punkte
Beantwortet von lefty04 Mitglied (183 Punkte)
Hallo,

danke für den Tip, habe mein Problem jetzt doch im VBA gelöst.
Ich habe ein Modul mit diesem Code erstellt:

Function Aktualisieren()

DoCmd.SetWarnings False

DoCmd.OpenQuery "anfügen 2004", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2005", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2006", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2007", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2008", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2009", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2010", acNormal, acEdit
DoCmd.OpenQuery "anfügen 2011", acNormal, acEdit
DoCmd.SetWarnings True

End Function


und es als Funktion Deklariert. Anschließend habe ich in Access ein Makro erstellt und ihm über "AusführenCode" meine Funktion zugeordnet.
Funzt prima, aber falls wer ne bessere bzw. einfachere Lösung hat, dann immer her damit!!!
Gruß Lefty
0 Punkte
Beantwortet von papa39 Mitglied (205 Punkte)
ja, das ist dasselbe in grün :)
0 Punkte
Beantwortet von lefty04 Mitglied (183 Punkte)
...na dann ist ja gut!!!!!
0 Punkte
Beantwortet von rahi Experte (1.5k Punkte)
Hallo Lefty04,

falls es mal ein paar mehr Abfragen sein sollten, kannst du auch mit einer For-Schleife arbeiten:

For i = 2004 to 2011
DoCmd.OpenQuery "anfügen " & i, acNormal, acEdit
Next

Falls du dabei nicht die ganzen Abfragen erstellen willst, könntest du auch mit einem "Docmd.runsql "<sql-String>" das SQL direkt, also ohne Abfragen, ausführen.

Gruß
Ralf
0 Punkte
Beantwortet von lefty04 Mitglied (183 Punkte)
Hi Ralf,

find ich auch schick, verkürzt das ganze ja um ein paar Zeilen, was ich ja immer "schöner" finde als nen Kilometer Text stehen zu haben.

Danke und Gruß,

Lefty
...