Hallo Gemeinde,
in meiner Db gibt es das EndlosFormular Suche_nach_RFQnummer. Dieses wird via Kriteriumswert(eine RFQ-Nummer) über Buttonclick geöffnet. Ich möchte nun noch in dem Formular Artikelerfassung einen Button einfügen der via VBA das o.g. Formular öffnet und den Wert aus dem Dropdownfeld der Artikelerfassung ME!RFQNummer.Column(0) als Kriteriumswert dazu verwendet.
Hat jemand eine Idee wie ich das hin bekomme oder geht das überhaupt nicht?
Private Sub DeinButton_Click
DoCmd.OpenForm _
Formname:="Suche_nach_RFQnummer", _
WhereCondition:="RFQnummer = " & ME!cboRFQNummer
'unter der Voraussetzung, dass die Nummer eine Zahl ist
'weitere Parameter nach Belieben/Anforderung
End SubObjektnamen anpassen!
.Column(0) braucht es nicht, wenn es die gebundene Spalte ist.
Hinweis, - verpasse den Steuerelementennamen einen passenden Prefix.
Für ein Kombi nimmt man normal "cbo" (s.o.). Code ist dann besser
verständlich.
Hallo Access Guru,
zunächst vielen lieben Dank für deine Hilfe. So bin ich auf jeden Fall mal einen Schritt weiter aber
leider funktioniert das nicht. Das Formular geht auf aber der Kriteriumswert wird offenbar nicht übergeben an die Abfrage, denn im Formular steht da nichts drin. Statt dessen kommt das Dialogfeld mit dem übergebenen Wert als Beschreibungstext. Wie muss ich den Code ändern, denn der zu übergebene Wert ist ein String, da die RFQ-Nummer sowohl eine Zahl als auch ein Text sein kann?
Private Sub rfqansicht_Click()
Dim stDocName As String
Dim stLinkCriteria As String
Dim RFQNr As String
RFQNr = Me!RFQNummer.Column(0) ' die gebundene Spalte ist 1 der eigentliche Wert steht in 0 wegen der Anzeige im Formular
Debug.Print RFQNr
stDocName = "Suche_nach_RFQ_Nummer"
DoCmd.OpenForm FormName:=stDocName, _
WhereCondition:="RFQnummer = " & RFQNr
Exit_rfqansicht_Click:
Exit Sub
Err_rfqansicht_Click:
MsgBox Err.Description
Resume Exit_rfqansicht_Click
End Sub
Hallo,
Zitatdie gebundene Spalte ist 1 der eigentliche Wert steht in 0 wegen der Anzeige im Formular
Das ist nicht zu empfehlen. Als gebundene Spalte nimmt man im Regelfall immer die 1.Spalte (0). Die 2. (1) Spalte zeigt den Text.
Die 1. Spalte blendet man über die Spaltenbreite aus, sodass man den Text sieht.
Was steht denn in der 1. Spalte "Column(0)", die ID (Primärschlüssel) ?
Kannst Du mal ein Bild des Beziehungsfensters hier zeigen?
Man braucht auch kein extra Formular zum Suchen. Man nimmt das Formular das auch zur Dateneingabe dient, das man dann ganz einfach filtert.
Hallo MzKlMu,
in Spalte 0 steht die tatsächliche RFQ-Nummer in Spalte 1 die Beschreibung dazu. Z.B. 0815 | Kaffemaschine.
Bevor wir aber nun über die DB uns unterhalten, möchte ich nochmals kurz erklären was mein Prob ist:
Im Datenerfasssungsformular gibt es ein Dropdownfeld welches die RFQ-Numern enthält(wie Anfangs dargestellt).
In diesem Formular möchte ich nun einen Button integrieren, der mir via ausgewählter RFQ-Nummer(vom Dropdownfeld)
das Endlos-Formular Suche_nach_RFQ_nummern öffnet. Dort werden dann alle Artikel aufgelistet die mir für den RFQ zugesendet wurden. Ebenso habe ich im Formular Hauptmenü eine Schaltfläche RFQ-Ansicht, die das Suche_nach_RFQ... Formular öffnet. Hierzu wird aber ein Dialog-Fenster geöffnet in dem die RFQ-Nummer als Kriteriumswert abgefragt wird.
Ich möchte also einmal das Formular Suche_Nach_RFQ_Nummer per VBA + RFQNummer als Parameter öffnen* und
aber auch im Hauptmenü per Eingabe Kriteriumswert über die Dialogbox öffnen.
*So geht der Aufruf via VBA:
Dim stDocName As String
Dim stLinkCriteria As String
Dim RFQNr As String
RFQNr = Me!RFQNummer.Column(0)
Debug.Print RFQNr
stDocName = "Suche_nach_RFQ_Nummer"
DoCmd.OpenForm stDocName, , , "RFQNummer = '" & RFQNr & "'"
RFQNr = ""
Exit_rfqansicht_Click:
Exit Sub
Err_rfqansicht_Click:
MsgBox Err.Description
Resume Exit_rfqansicht_Click
End Sub
Allerdings kommt trotzdem die Dialogbox zur Abfrage des Kriteriumswertes. -> und das soll ja nicht sein!
Lasse ich den Eintrag: Wie [geben sie die RFQ-Nummer ein:] in der Abfrage bei KriteriumsWert weg, geht der Aufruf im Hauptmenü nicht mehr...
Hallo,
ZitatBevor wir aber nun über die DB uns unterhalten,
Nee, das ist immer das erste. Ohne korrektes Datenmodell macht
es keinen Sinn sich mit Formularen zu beschäftigen.
Also
ZitatKannst Du mal ein Bild des Beziehungsfensters hier zeigen?
Ich bin raus solange das nicht vorliegt.
Und bitte keine "abstrakte Kunst", sondern ein bisschen aufgeräumt.
gruss ekkehard
Hallo,
Filterungen erfolgen grundsätzlich über die ID (den Primärschlüssel), nicht über den Klartext. Und das (der PS) ist auch die gebundene Spalte. Was man im Kombi sieht und auswählt ist eine reine Einstellungssache des Kombis.
Und wie gesagt, ist das extra Formular überflüssig, denn Du brauchst das Datenerfasssungsformular nur zu filtern. Das hat den gleichen Effekt wie das extra Formular, das ja auch nur gefiltert wird.
Das Beziehungsfenster wäre sinnvoll.
Hast Du überhaupt Beziehunegn angelegt ?
Die Verknüpfungen in der Abfrage sind nicht die Beziehungen.