MS-Access: Ausführen von Ereignisprozeduren durch Formularschaltflächen
Hallo Community,
ich bitte um Unterstützung bei der Lösung folgender Aufgabe. Vorneweg muss ich leider schicken, dass ich keinerlei Kenntnisse von VBA habe und den Stand meiner "Entwicklung" hauptsächlich durch Recherche in Forenbeiträgen und durch Unterstützung von Wissenden erreicht habe.
Über meine Acess-Datenbank frage ich per ODBC-Schnittstelle Daten aus einer MS-SQL-Datenbank ab.
Ich möchte durch zwei Formularschaltflächen zwei unterschiedliche Abfragen (Zeichnungen_Bestellung und Zeichnungen_Anfrage) einer MS-SQL-DB starten, die das Abfrageergebnis in eine Textdatei schreiben. Mit der ersten Schaltfläche Zeichnungen_Bestellung funktioniert dies auch einwandfrei und sieht folgendermaßen aus:
Die Ereignisprozedur sieht folgendermaßen aus:
Ich benötige eine zweite Schaltfläche für die Abfrage der Zeichnungen für Anfragen. Hierzu habe ich die Schaltfläche Zeichnungen_Bestellung kopiert und die Ereignisprozedur angepasst, siehe Screenshot. Daraufhin funktionierte die Schaltfläche Zeichnungen_Bestellung nicht mehr, da die Schaltfläche Zeichnungen_Anfrage anscheinend auf die selbe Ereignisprozedur zugreift.
Wie kann ich es erreichen, dass ich jeder Schaltfläche eine eigene Ereignisprozedur hinterlegen kann?
Vielen Dank für die Unterstützung.
Roland
ich bitte um Unterstützung bei der Lösung folgender Aufgabe. Vorneweg muss ich leider schicken, dass ich keinerlei Kenntnisse von VBA habe und den Stand meiner "Entwicklung" hauptsächlich durch Recherche in Forenbeiträgen und durch Unterstützung von Wissenden erreicht habe.
Über meine Acess-Datenbank frage ich per ODBC-Schnittstelle Daten aus einer MS-SQL-Datenbank ab.
Ich möchte durch zwei Formularschaltflächen zwei unterschiedliche Abfragen (Zeichnungen_Bestellung und Zeichnungen_Anfrage) einer MS-SQL-DB starten, die das Abfrageergebnis in eine Textdatei schreiben. Mit der ersten Schaltfläche Zeichnungen_Bestellung funktioniert dies auch einwandfrei und sieht folgendermaßen aus:
Die Ereignisprozedur sieht folgendermaßen aus:
Option Compare Database
Option Explicit
Private Sub Befehl73_Click() ' Source.txt Datei mit Zeichnungen einer Bestellung erstellen
Dim fileName As String
Dim rs As Recordset
Dim db As Database
Dim queryName As String
Dim f As Field
Dim MyValue1 As String
Dim Message, Title, Default, MyValue
Message = "Bitte Bestellnummer eingeben:" ' Set prompt
Title = "InputBox" ' Set title.
Default = "" ' Set default
MyValue1 = InputBox(Message, Title, Default)
queryName = "SELECT DISTINCT dbo_BESTELLUNGPOS.ZEICHNUNG FROM dbo_BESTELLUNGPOS WHERE dbo_BESTELLUNGPOS.BESTELLUNG Like '" & MyValue1 & "'"
fileName = "c:\Users\slro\!slro\miro\Zeichnungen\Source.txt"
Set db = CurrentDb
Set rs = db.OpenRecordset(queryName)
Open fileName For Output As #1
'Print #1, " ";
'For Each f In rs.Fields
'Print #1, vbTab & f.Name;
'Print #1, f.Name;
'Next f
'Print #1,
Do While Not rs.EOF
'Print #1, Format(rs.AbsolutePosition + 1, "00000");
For Each f In rs.Fields////
'Print #1, vbTab & f.Value;
Print #1, f.Value;
Next f
Print #1,
rs.MoveNext
Loop
Close #1
End Sub
Private Sub Zeichnungen_Anfrage_Click()
End Sub
Ich benötige eine zweite Schaltfläche für die Abfrage der Zeichnungen für Anfragen. Hierzu habe ich die Schaltfläche Zeichnungen_Bestellung kopiert und die Ereignisprozedur angepasst, siehe Screenshot. Daraufhin funktionierte die Schaltfläche Zeichnungen_Bestellung nicht mehr, da die Schaltfläche Zeichnungen_Anfrage anscheinend auf die selbe Ereignisprozedur zugreift.
Wie kann ich es erreichen, dass ich jeder Schaltfläche eine eigene Ereignisprozedur hinterlegen kann?
Vielen Dank für die Unterstützung.
Roland
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3965982956
Url: https://administrator.de/forum/ms-access-ausfuehren-von-ereignisprozeduren-durch-formularschaltflaechen-3965982956.html
Ausgedruckt am: 10.01.2025 um 18:01 Uhr
2 Kommentare
Neuester Kommentar
Wie kann ich es erreichen, dass ich jeder Schaltfläche eine eigene Ereignisprozedur hinterlegen kann?
Indem du die Schaltfläche umbenennst (einen neuen Namen vergibst) und dann das Feld Ereignisprozedur kurz leer machst und dann erneut auswählst, dann erstellt Access eine neue Prozedur mit dem Name n der neuen Schaltfläche und verknüpft die Schaltfläche damit.Cheers
Certguy