![Kann Access ein zugehöriges Feld in einem Dateneingabeformular anzeigen?](https://rvso.com/image/1346590/Kann%20Access%20ein%20zugeh%C3%B6riges%20Feld%20in%20einem%20Dateneingabeformular%20anzeigen%3F.png)
Angenommen, ich erstelle eine Access-Datenbank, um Rezepte zu speichern und die Kosten dieser Rezepte zu berechnen. Ich benötige eine Tabelle mit Rezepten, eine Tabelle mit möglichen Zutaten und eine Tabelle mit Rezeptpositionen.
Die Kosten jeder Zutat werden zusammen mit der Maßeinheit in der Tabelle „Zutaten“ gespeichert. Beispielsweise könnten wir die Zutat „Hamburger“ mit der Maßeinheit „Unzen“ und einem Preis von 0,25 USD pro Unze speichern.
RECIPES INGREDIENTS RECIPELINES
-------- ------------- -------------
ID ID ID
Name Name RecipeID
MeasurementUnit IngredientID
CostPerUnit Quantity
Ich erstelle ein Unterformular zum Hinzufügen von Rezeptzeilen. Ich möchte die Eingabe im Feld „Menge“ zulassen, aber auch die Maßeinheit der Zutat anzeigen. Mit anderen Worten soll das Formular folgendermaßen aussehen:
RECIPE FORM
ID: [ 5 ]
Name: [ Guacamole ]
Recipe line items: (this is the subform)
INGREDIENT AMT UNIT
----------------------------------
[ Hass Avocado ] [ 2.0 ] [ EA ]
[ Red Onion ] [ 0.5 ] [ CUP ]
[ Habanero Chile ] [ 2.0 ] [ EA ]
Sobald der Benutzer einen Zutatennamen eingibt (ein Kombinationsfeld über dem Feld „IngredientID“), möchte ich die Maßeinheit anzeigen, damit der Benutzer weiß, ob er Unzen, Tassen, Pfund oder was auch immer eingibt. Ist das möglich?
Antwort1
Ich habe die gesamte Frage aufgeschrieben, dann hat mich Super User darauf hingewieseneine andere Fragedas hatte übrigens die Antwort, die ich brauchte.
Ändern Sie im Formular selbst die Datensatzquelle so, dass sie eine Abfrage statt einer Tabelle ist. In diesem Fall:
SELECT RecipeLines.*, Ingredients.MeasurementUnit
FROM Ingredients
INNER JOIN RecipeLines ON Ingredients.ID = RecipeLines.IngredientID;
Dann wird die Messeinheit zu einer auswählbaren Steuerelementquelle in einem Textfeld. Durch Deaktivieren des Textfelds wird es zu einer schreibgeschützten Anzeige.