PDA

Vollständige Version anzeigen : Formular bearbeiten nach Tabellenveränderung


mikeboy
13.06.2001, 15:26
Hallo Access-Freaks,

ich habe folgendes Problem: Ich habe ein Formular erstellt aus der Tabelle 1 erstellt. In diesem Formular sind zusätzlich noch 4 Unterformulare inregriert. Ich möchte nun nachträglich in meiner Tabelle 1 ein Feld hinzufügen und danach in mein Formular einspeisen. Leider ist es über die Funktion Ansicht- Feldliste - im Entwurfsmodus nicht möglich. Kann mir jemand helfen ?
Vielen Dank im voraus.

Mickey
13.06.2001, 15:36
Hi mikeboy,

Hast Du noch eine Abfrage vor Dein Formular geschaltet, sieht ganz danach aus. Wenn das der Fall ist, dann füge das neue Feld in die Abfrage ein. Jetzt kannst Du auch in der Feldliste des Formulars auf das neue Feld zugreifen. Hoffe, das hilft Dir weiter.

Ciao Mickey

PS: Natürlich nur unter der Voraussetzung, daß Du das Feld in die Tabelle schon eingefügt hast.

[Dieser Beitrag wurde von Mickey am 13.06.2001 editiert.]

mikeboy
13.06.2001, 23:23
Hi Mickey,

Danke für Deine schnelle Antwort. Ich habe eigentlich keine Abfrage vorgeschalten. Es soll auch nur ein Kontrollfeld(Ja/Nein) sein, falls das ein Faktor sein könnte ?! Es handelt sich um eine Netzwerkdokumentation und den Bereich Software. Da halt ab und an ein neues Programm dazu kommt wäre eine Feldergänzungsmöglichkeit sehr wichtig.

Grüße

Bernd Koch
13.06.2001, 23:56
Dein erster Beitrag ist etwas zweideutig, da könnte man verschiedene Konstellationen rauslesen, deshalb mal ganz gründlich:

- in Tabelle1 hast du einige Felder

- ein (Haupt)Formular basiert auf dieser Tabelle1

- nun möchtest du noch ein neues Feld im Hauptformular, n i c h t in einem der Unterformulare?!?

- du findest das neue Feld nicht in der Feldliste, um es im Hauptformular einfügen zu können obwohl du es vorher in der Entwurfsansicht der Tabelle erstellt hast??

Wenn alle obigen Bedingungen stimmen, ist es eigentlich nicht möglich, dass das Feld nicht auftaucht. Der Dateityp ist dabei völlig egal. Jedes Feld, das in eine Tabelle eingetragen wird, ist danach auch in der Feldliste des Formulars sichtbar, wenn das Formular auf dieser Tabelle basiert.

Bernd

mikeboy
14.06.2001, 00:07
Danke Bernd.

Du hast die Sache auf den Punkt gebracht.
Ich möchte ein neues Feld im Hauptformular erstellen, wobei das Hauptformular auch auf 2 Tabellen basiert. Liegt hier vielleicht der Hund begraben ?
Ist diese Feldergänzung auch nach der Dateneingabe möglich ?

Bernd Koch
14.06.2001, 00:48
Ein Formular kann immer nur auf e i n e r Tabelle basieren, deshalb kann deine Aussage, das Hauptformular basiere auf zwei Tabellen, nicht richtig sein.

Wenn du Daten in zwei oder mehr Tabellen hast und alle oder einige Felder aus diesen verschiedenen Tabellen im Formular anzeigen möchtest, dann gibt es grundsätzlich zwei Möglichkeiten:

- du führst die Tabellen zuvor in einer Abfrage zusammen und basierst dann das Formular auf dieser Abfrage (ein Formular kann aber auch wieder nur auf e i n e r Abfrage basieren, nicht auf mehreren)

- du hast ein Hauptformular, das auf einer Tabelle oder Abfrage beruht p l u s ein Unterformular, das auf einer (anderen) Tabelle oder Abfrage beruht.

Bleiben wir bei der ersten Möglichkeit: es ist nicht damit getan, dass man die Tabellen einfach nur in die Abfrage einfügt, man muss sie vorher in richtiger Weise miteinander verknüpfen (in Beziehung setzen).

Zu deiner Frage nach der nachträglichen Feldergänzung: nehmen wir an, in deiner Tabelle sind bisher 5 Felder und 10 Datensätze. Nun fügst du ein neues Feld in die Tabelle ein. Dann ist dieses Feld natürlich bei den bisherigen 10 Datensätzen leer und muss evtl. nachträglich gefüllt werden. Aber das grundsätzliche Hinzufügen eines Feldes ist immer möglich.

Das Formular ist ja gewissermaßen nur eine andere Sicht der Dinge. Und damit kommen wir zu den schon gegebenen Antworten von Mickey und mir.

Basiert das Formular direkt auf einer Tabelle und du fügst ein neues Feld in die Tabelle ein, dann erscheint es auch in der Feldliste des Formulars und du kannst es dort einfügen.

Basiert das Formular auf einer Abfrage, so musst du zunächst im Abfrageentwurf das neu in die Tabelle eingegebene Feld nach unten ziehen und die Abfrage speichern. Danach ist es dann wiederum in der Feldliste des Formulars vorhanden.

Aber ich habe irgendwie so eine Ahnung, dass bei dir im Kopf irgendwas noch "quer" gedacht wird (1 Formular, zwei Tabellen usw.)

Vielleicht ist es sinnvoll, dass du mal die Struktur deiner DB mitteilst (sonst wird das für mich oder andere eine Ratestunde).

- welche Tabellen hast du (natürlich sind nur die interessant, die mit deinem Formular zu tun haben).

- sind die miteinander verknüpft, wenn ja: in welcher Form, über welche Felder mit welchem Dateityp?

- was enthält dein Hauptformular für Felder (die Unterformulare sind erstmal uninteressant). Woraus begründet sich deine Ansicht, das Formular hätte Felder aus zwei Tabellen (welche sind denn z.Zt. aus der einen und welche (angeblich) aus der anderen??).

Vielleicht kriegen wir dann etwas mehr Licht ins Dunkel.

Bernd

mikeboy
14.06.2001, 03:05
Hi Bernd,

Vielen Dank für Deine Hilfe. Ich hab´s.
Ich mußte zuerst die neuen Tabellenfelder über Formular-Eigenschaften-Datenherkunft einfügen, und dann sind sie auch in meiner Feldliste erschienen. Es gibt noch viel zu lernen, aber es ist ja meine erste DB (Absolute Beginner)! Vielleicht könntest Du mir noch das Phänomen erklären, daß manchmal beim Erstellen von Formularen, Nachschlagefelder und Kontrollkästchen als normales Feld ausgegeben werden.

Nochmals Vielen Dank.

Grüße

Bernd Koch
14.06.2001, 04:14
Na siehst du, einen Schritt bist du weiter.

Das mit der Formulareigenschaft Datenherkunft bezieht sich nicht auf einzelne Felder, sondern auf die jeweilige (ganze) Tabelle oder Abfrage.

Wenn ich oder jemand anderes hier im Forum schreibt:"Das Formular b a s i e r t auf der Tabelle (oder Abfrage) XY", dann ist genau das damit gemeint, dass man (normalerweise beim Erstellen des Formulars - man kann es aber auch später noch ändern) als Datenherkunft eben die Tabelle/Abfrage XY auswählt.

Und dann ist ja klar: dort kann man immer nur eine auswählen ...

Was die Nachschlagefelder und Kontrollkästchen angeht: wenn du in der Tabelle z.B. ein Nachschlagefeld anlegst und dort auswählst, dass es ein Kombinationsfeld sein soll, so "vererbt" sich das dann automatisch auf jede neue Abfrage und auch auf ein Formular, das du erst später erstellst (also nachdem du in der Tabelle das Nachschlagefeld als Kombi-Feld deklariert hast).

Jetzt kann es aber sein, dass du zunächst in der Tabelle das Feld als normales Textfeld erstellt hast, erzeugst dann ein Formular, das auf dieser Tabelle basiert, ziehst das Feld aus der Feldliste ins Formular und hast natürlich ein normales Textfeld.
Irgenwann später gehst du noch mal in die Tabelle und stellst das Textfeld um zum Kombifeld ... nun ändert sich nichts in deinem Formular!! Nachträglich wird keine automatische Änderung vorgenommen. Du könntest nun im Formular zwar das Feld in ein Kombifeld umwandeln (das sind in etwa die selben Schritte, die du zuvor schon in der Tabelle gemacht hast) aber viel einfacher ist es, wenn du im Formular das Feld noch einmal löscht und es dann sofort wieder aus der Feldliste einfügst ... dann erscheint es als Kombifeld.

So ähnlich funktioniert das auch mit den Kontrollkästchen (= Ja/Nein-Felder). Schau mal in der Tabelle nach, ob du bei dem Kontrollkästchen, das im Formular als Textfeld erscheint, im Register "Nachschlagen" die Einstellung "Textfeld" oder "Kontrollkästchen" hast (es dürfte wohl "Textfeld" sein). Wenn du es dann auf "Kontrollkästchen" umstellst, tut sich zunächst wieder im Formular nichts. Dort also erst wieder löschen und dann über die Feldliste neu einfügen ... dann werden Sie geholfen.

Bernd

mikeboy
16.06.2001, 14:42
Danke Bernd.

Werd ich gleich mal probieren !
Schönes Wochenende !