Ist es möglich, den Inhalt eines Textfeldes in einem Formular einer Tabelle zu entnehmen? Die Tabelle enthält ein Feld "Inhalt" und aus diesem Feld soll immer nur die Zelle angezeigt werden, die dem Primärschlüssel mit ID=5 zugeordnet ist, also in der gleichen Zeile steht.
Geht sowas?
Hintergrund ist, dass die Inhalte von Textfeldern später in verschiedenen Formularen verändert werden sollen und ich das nicht mehr händisch machen möchte, wenn das Textfeld in 20 Formularen auftaucht.
Hallo,
ich verstehe die Frage nicht.
Einerseits sprichst Du von einem Feld und dann wieder von einer Zelle (Zellen gibt es bei Access nicht).
Vermutlich musst Du hier nur eine weitere Tabelle anlegen und eine Beziehung erstellen.
Bitte mal die Frage präzisieren.
Zitat von: MzKlMu am Mai 08, 2016, 19:17:51
Hallo,
ich verstehe die Frage nicht.
Einerseits sprichst Du von einem Feld und dann wieder von einer Zelle (Zellen gibt es bei Access nicht).
Vermutlich musst Du hier nur eine weitere Tabelle anlegen und eine Beziehung erstellen.
Bitte mal die Frage präzisieren.
Okay. Also ich habe eine Tabelle mit zwei Feldern, "ID" und "Inhalt".
In einem Formular soll ein Textfeld entstehen, dass immer genau den Wert von "Inhalt" anzeigt, dessen "ID" 5 ist.
Also das Textfeld soll nicht scrollen dürfen durch alle Werte von "Inhalt", sondern nur den Inhalt anzeigen, bei dem die ID=5 beträgt.
Hallo,
in der anderen Tabelle muss es doch aber ein Feld geben, das diese 5 gespeichert hat, oder nicht ?
Ich glaube, Du versuchst hier Accesstabellen mit Excellook zu erstellen, was aber unweigerlich schief geht.
Zitat von: MzKlMu am Mai 08, 2016, 19:33:20
Hallo,
in der anderen Tabelle muss es doch aber ein Feld geben, das diese 5 gespeichert hat, oder nicht ?
Ich glaube, Du versuchst hier Accesstabellen mit Excellook zu erstellen, was aber unweigerlich schief geht.
Nein, ich habe mich falsch ausgedrückt.
Also: Ich erstelle für verschiedene Aufgaben z.B. 20 Mal das selbe Formular. Zuerst wird das Formular erstellt, dann 20 Mal kopiert. Das wird hier so benötigt.
In dem Formular befinden sich Textfelder, deren Inhalt in allen 20 Versionen gleich sein, ABER mit der zeit verändert werden sollen. Daher suche ich nach einer Möglichkeit, den Inhalt des Textfeldes außerhalb des Formulars abzulegen. Egal wie. Damit ich im Bedarfsfall dann nur den Text einmal verändern muss und nicht 20 mal.
Jetzt dachte ich, man kann einfach eine Tabelle anlegen, die den Test "Inhalt" des Textfeldes enthält.
Ist es möglich, in einem Textfeld einen Einzelwert aus einer Tabelle wieder zu geben?
Hallo,
das Formular hat doch eine Tabelle als Datenherkunft und in dieser Tabelle muss es doch einen Bezug geben zur Tabelle mit "ID" und "Inhalt".
Anders macht es ja keinen Sinn.
ZitatZuerst wird das Formular erstellt, dann 20 Mal kopiert.
braucht man alles nicht. 20x das gleiche Formular, wozu soll das gut sein ?
Ein Formular das man entsprechend sortiert/filtert etc.
Wodurch unterscheiden sich die Formulare ?
Ich bin sicher, Du programmierst (bzw. machst) hier Sachen die sich bei richtiger datenbankgerechter Vorgehensweise viel effizienter und einfacher lösen ließen.
Man kann nicht einfach so mal eine Datenbank machen.
Weiß ich. Ich habe ja auch bis 2017 Zeit.
Doch, es werden so viele Versionen gebraucht. Ich kann beispielsweise nicht mit Unterformularen arbeiten.
Was ich gerade sehe ist: Ja, das Formular basiert auf einer Tabelle, aber es enthält Textfelder, die auf einer anderen, sehr kleinen Tabelle basieren sollen. Diese soll die Texte der Textfelder in einem Feld enthalten.
Beide, die große und die kleine Tabelle sollen nicht mit einander verknüpft sein. Im Formular wird ja jeweils immer nur ein Wert gebraucht, kein Datensatz.
Hallo,
tut mir leid, ich verstehe es nicht.
ZitatIch kann beispielsweise nicht mit Unterformularen arbeiten.
habe ich was geschrieben von Unterformularen ?
Leider hast Du nicht beschrieben, wie sich die Formulare unterscheiden, es kann ja nur an den Daten liegen, wenn diese einfach kopiert werden können.
Kannst Du mal ein Bild des Beziehungsfensters hier posten ?
PS:
Und unterlasse doch bitte diese vollständigen Zitate. Nicht wundern, ich habe es gelöscht.
Ich habe ein Bild gemacht.
Es gibt keine Tabellen zu verknüpfen. Ich brauche in dem Textfeld lediglich einen Einzelwert, der nicht in dem Textfeld selbst abgelegt ist, sondern irgendwo anders.
Hallo,
sorry, aber das Vorhaben ist so unbrauchbar. Hier liegt eindeutig eine 1:n Beziehung vor. In das Feld muss einfach die 5 eingetragen werden (vielleicht gibt es ja ein solches Feld schon) und dann über das Zahlenfeld eine Beziehung in einer Abfrage mit beiden Tabellen anlegen. Dann ist Dein Vorhaben vollkommen automatisch realisiert.
Habe ich echt Verständnisschwierigkeiten.
Gibt es eine Möglichkeit, aus einem Feld einen Einzelwert auszulesen im Sinne von [tabelle]![feld]:[ID=5] oder sowas?
Oder mal anders herum gefragt, wie werden denn Konstanten oder veränderliche Skalare abgelegt, die jemand zu Berechnungen benötigt? Muss man die in jedem Formular hart rein kopieren oder kann man die irgend wo ablegen und von dort aus beziehen?
Zum Beispiel wenn man an verschiedenen Stellen was mit 0.3 gewichten möchte, aber schon weiß, dass sich die Gewichtung in Zukunft immer mal ändern wird. Kann man diesen Faktor nicht aus einer 1*1-Tabelle beziehen und dann eben nur dort ändern, wenn es sein muss?
Hallo,
wo gibt es Verständnisschwierigkeiten?
Solche "Quasi"-Konstanten werden üblicherweise in einer Parameter-Tabelle hinterlegt und mit z. B. der Dlookup()-Funktion ausgelesen. (In diesem prinzipiellen Beispiel ohne Rücksicht auf evtl. Gültigkeitszeiträume)
tblParameter:
PName (Text, PK) PWert (Text)
Gewichtung 0,3
Bei einer Anzeige in einem Formular-Textfeld in dessen Steuerelementinhalt:
=Dlookup("PWert";"tblParameter";"PName = 'Gewichtung')
oder bezogen auf die anfängliche Konstellation:
=Dlookup("Hinweisfelder";"hinweisfelder";"ID=5")
Hallo,
wenn dann der so bezogen Wert verwendet wird, ändern sich auch die alten Werte mit dem neuen Wert, ist das dann so gewollt ?
Hi,
ZitatHintergrund ist, dass die Inhalte von Textfeldern später in verschiedenen Formularen verändert werden sollen und ich das nicht mehr händisch machen möchte, wenn das Textfeld in 20 Formularen auftaucht.
daraus könnte man das ableiten...
wobei die Frage nach einem sinnvollen Konzept trotzdem im Raume steht....
Zitat von: DF6GL am Mai 08, 2016, 22:04:23
Hallo,
wo gibt es Verständnisschwierigkeiten?
wow, danke. Es hat geklappt! Super Truppe hier.
Und sag mal, wieso wird "Dlookup" automatisch in "domwert" umgerubelt?
Hallo,
weil Dlookup ein englischer Ausdruck ist und deutsches Access übersetzungswütig ist....
Hallo Arndt,
DLookup ist VBA - DomWert ist Access.
Oder, VBA spricht englisch, Access deutsch.
gruss ekkehard
Uups, Franz' Post gar nicht gesehen.