Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Formular aus Formular öffnen mit dem selben Datensatz

Begonnen von carman0103, Mai 01, 2013, 08:14:07

⏪ vorheriges - nächstes ⏩

carman0103

Hallo Leute,

ich brauche mal wieder Eure geschätzte Hilfe. Ich habe ein Formular mit einem Button. Dieser Button soll ein anderes Formular öffnen und dort den selben Datensatz anzeigen, der bereits in dem anderen Formular gezeigt wurde. Mein Code sieht derzeit so aus:

Private Sub Befehl1127_Click()
    Dim FormularName As String
    Dim Filter As String
   
    FormularName = "Galerie"
    Filter = "[Datensatz] = " & Me![Datensatz]
    DoCmd.OpenForm FormularName, acForm, Filter

End Sub


Ich bekomme erstens nur eine Druckvorschau angezeigt und zweitens nicht die gewünschten Daten. Es wiederholt sich immer wieder der erste Datensatz.

Vielleicht kann mir da ja jemand weiterhelfen. Danke schon mal vorab.
Wer andern eine Bratwurst brät, hat meist ein Bratwurstbratgerät  Grinsend

MzKlMu

Hallo,
Du musst im Filter den Primärschlüssel des Datensatzes übergeben.

Was enthält/bedeutet denn das Feld [Datensatz] ?
Gruß Klaus

carman0103

Wer andern eine Bratwurst brät, hat meist ein Bratwurstbratgerät  Grinsend

DF6GL

Hallo,

wenn man aus "Autowert" darauf schließen kann, dass es sich auch um das Primärschlüssel-Feld handelt, dann etwa so:

Private Sub Befehl1127_Click()
    DoCmd.OpenForm "Galerie", , ,"[Datensatz] = " & Me![Datensatz]
End Sub



Bei solchen Sachen ist aber darauf zu achten, dass man sich nicht selber bei der Bearbeitung des Datensatzes (aus)sperrt...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

MzKlMu

Hallo,
dann verwende den Open Befehl richtig.

Private Sub Befehl1127_Click()
    Dim FormularName As String
    Dim Filter As String
   
    FormularName = "Galerie"
    Filter = "[Datensatz] = " & Me![Datensatz]
    DoCmd.OpenForm FormularName, acNormal, , Filter

End Sub

acForm gibt es an der Stelle nicht, außerdem ist das kein Filter, sondern eine Where Klausel. Daher fehlt ein Komma.
Warum schaust Du nicht in der Hilfe nach, da ist das alles (ausführlich!) mit Beispielen beschrieben.

Hier noch die Kurzform:
Private Sub Befehl1127_Click()
    DoCmd.OpenForm "Galerie", , , "[Datensatz] = " & Me![Datensatz]
End Sub
Gruß Klaus

carman0103

Super! Vielen Dank Leute. Funktioniert super.

Manchmal sieht man den Wald vor lauter Bäumen nciht.... ;-)
Wer andern eine Bratwurst brät, hat meist ein Bratwurstbratgerät  Grinsend

ReneB

Hallo Leute,

habe das Thema nochmal geöffnet, da ich gern wissen wollte, ob man diesen Code so abändern kann, daß auch ähnliche Datensätze mit angezeigt werden.  Ich suche eigentlich eine Identifizierung über die ersten vier Buchstaben/Ziffern. Der Grund ist das wir für ein Produkt unterschiedliche Verpackungen haben und diese ab der 5. Stelle variieren. Habe mal ein bisschen rumgespielt und versucht den Code anzupassen, leider ohne Erfolg.

Private Sub Bestand_prüfen_Click()
DoCmd.OpenForm "AktuellerLagerbestand", , , "MaterialNr like  '*" & Me!MaterialNr & "*'"
End Sub


Wäre Super wenn jemand eine Lösung anbieten könnte.

Danke sehr

Rene

MzKlMu

Hallo,
und was soll jetzt unterschieden werden, die Verpackungen, also Lagerbstand je Verpackung ?

Bitte mal genauer erläutern.
Gruß Klaus

ReneB

Hallo Klaus

nun ich möchte alle Datensätze sehen, wo die ersten 4 Stellen mit meinem im Formular fokussierten Datensatz  übereinstimmen. Aktuell schaffe ich es nur exakte Datensätze anzuzeigen.

Danke vorab.

Rene

MaggieMay

Hi,

wie heißt denn das Datenfeld, das diese ersten vier Zeichen nach denen du suchen willst enthält? Und in welcher Tabelle befindet es sich?
Freundliche Grüße
MaggieMay

Lachtaube

Du solltest dann auch die ersten vier Zeichen in die Bedingung aufnehmen.   ... , "MaterialNr LIKE '" & Left(Me.MaterialNr, 4) & "*'"
Grüße von der (⌒▽⌒)

ReneB

Hallo Lachtaube, Hallo Maggie,

habe diesen Code ausprobiert und funktioniert super.  ... , "MaterialNr LIKE '" & Left(Me.MaterialNr, 4) & "*'".

Vielen vielen Dank für Eure Hilfe.

Rene