Hallo zusammen,
ich würde in meinem Formular gerne Textfelder zur Eingabe sperren, wenn vorher bestimmte Daten in einem Kombi-Feld ausgewählt wurden.
Bsp.: =Wenn([Kombi-Feld]="Test";null;gesperrt)
Würde das irgendwie funktionieren?
Im voraus vielen Dank und viele Grüße
André
Hallo,
im Ereignis "Nach Aktualisierung" des Kombis:
Me.Feldname.Locked = Me.Kombifeld = "test"
Sperrt das Textfeld zur Eingabe wenn im Kombifeld "Test" ausgewählt wurde.
Die gleiche Codezeile sollte wahrscheinlich auch noch in das Ereignis "Beim Anzeigen" des Formulars.
PS:
Ein Kombi sollte nie auf den Klartext verweisen, sondern immer auf die Schlüsselzahl, die hoffentlich vorhanden ist.
Außerdem sollten in Feld und Objektnamen Sonderzeichen jediglicher Art vermieden werden, auch kein Leerzeichen.
Hi,
danke für die Antwort. Wenn ich das so Einfüge, passiert zunächst nach Aktualisierung des Formulars, gar nichts. Wenn ich im Kombi-Feld dann eine andere Auswahl Treffe erhalte ich die Fehlermeldung:
"Das Objekt "Me" wurde von Microsoft Access nicht gefunden."
Woran kann das liegen?
Hallo,
Zitatpassiert zunächst nach Aktualisierung des Formulars, gar nichts
das hat damit auch nichts zu tun, nach Aktualisierung des
Formulars habe ich auch nicht geschrieben.
Wie und wo hast Du das
genau eingegeben?
Das ist VBA Code und muss als vollständige Ereignisprozedur im VBA Editor angelegt werden.
In der Ereigniszeile steht dann nur [Ereignisprozedur].
Hi,
sag das doch ;D Ich hab das in den Eigenschaften des Kombi-felds unter "Ereignis" bei "nach Aktualisierung" eingetragen^^
Habe bis jetzt alles ohne VBA gemacht. Würde das hier auch ohne klappen?^^
Hallo,
ZitatWürde das hier auch ohne klappen?^^
nein, eventuell mit Makros, aber da kann wohl kaum jemand helfen, weil die keiner will.
Im Anhang ein einfaches Beispiel mit VBA.
Meine Hinweise zur Schlüsselzahl und Feldnamen hast Du gelesen?
[Anhang gelöscht durch Administrator]
Ja, was meinst du mit dem verweis auf Schlüsselzahlen? Ich habe die Daten Manuel in das Kombifeld eingegeben, da das Formular als Eingabeformular dienen soll. Somit verweist es ja auf nix oder? Und der Feldname da oben (schätze du meinst Kombi-Feld) war nur n Bsp. und ich wollte Kombinationsfeld nicht ausschreiben. Meine Feldnamen haben keine Sonderzeichen^^
Hallo,
Daten eine Kombifeldes sollte eine eigene Tabelle haben, mit einem eigenen Primärschlüssel. Wertelisten (=selbst eintragen) halte ich für völlig ungeeignet und unflexibel. Auch die Notwendigkeit Felder sperren zu müssen, deutet eher auf ein falsches Datenmodell hin.
Für weitere Erläuterungen wären mehr Infos zu Deiner DB notwendig.
Na dann lege ich mal los^^
Entstehen soll eine kleine DB zur übersichtlichen "Verwaltung" von Gesellschaften. Es soll halt ersichtlich sein, ob Personen oder Kapitalgesellschaft, wer Komplementär und Kommanditist ist etc. Nun sollen die Daten alle über ein Formular eingepflegt werden. Dabei soll z.B ausgewählt werden ob es sich um eine Personen- oder Kapitalgesellschaft handelt und in dieser Abhängigkeit sollen Felder zur Eingabe gesperrt werden (Kapitalgesellschaft hat nunmal keinen Kommanditisten oder Komplementär).
Was brauchst du noch für Infos?
Hallo,
bevor die Fragen zu Formularen gestellt werden, sollte zunächst die Tabellenkonstruktion den realen Datenverhältnissen entsprechen (Datenanalyse und Normalisierung, siehe u. st. Links 1 und 1a). Nimm also Papier und Bleistift (und einen Radiergummi) und schreibe alle vorkommenden und/oder benötigten Daten zusammen . Berechnete oder Ergebnis-Daten bleiben aber hier außen vor... Gruppiere die Daten so, dass alle "zusammengehörenden" Daten zu einem "Block" (--> Tabelle) zusammengefaßt werden. (Beachte dabei Regeln (keine reservierten Wörter, keine Sonder- und Leerzeichen ) zur Benamsung und Eindeutigkeit.) . Verpasse allen Tabellen ein Primärschlüsselfeld (im einfachsten Fall ein Autowertfeld) und zusätzlich den abhängigen (n-)Tabellen ein oder mehrere Fremdschlüsselfeld(er). Erzeuge die Tabellen in Access (mit genau passenden Feld-Datentypen) und setze die Beziehungen im Beziehungsfenster. Den Screenshot des Beziehungsfensters zeigst Du hier, so dass darüber diskutiert werden kann.
Hallo,
danke für deine Antwort. Im Moment ist es nur eine Tabelle, die enstehen soll.
Hallo,
naja, wenn Du meinst... dann zeige den Screenshot des Beziehungsfensters eben mit nur der einen Tabelle....
hast Du überhaupt mal die Links angesehen und auch gelesen?
Hi,
die Vorgabe war halt eine Tabelle aber wenn ich das jetzt so lese macht das wenig Sinn. Ich werde mal versuchen die Tabelle sinvoll aufzuteilen und poste dann den Screeni.. Weiß nur noch nicht wann ichs schaffe.
Vielen Dank erstmal!!!
Hi,
hier hab ich mal die Tabellen angehängt. Bin mir aber nicht sicher ob das so stimmt und stehe auch irgendwie son bisschen auf dem Schlauch wie ich dann weiter machen muss.
Hoffe ihr könnt mir noch n paar Tips geben.
Vielen Dank schonmal =)
[Anhang gelöscht durch Administrator]
Hallo,
Nein, das passt so nicht.
Die Zusammenhänge sind mir noch völlig unklar.
Wo werden die Namen erfasst (Du benötigst eine Tabelle für alle Personen) ?
Haben die Gesellschafter nicht auch Haftsummen und (Pflicht) Einlagen?
Wie hängt das mit den Projekten zusammen?
Hi,
ich sag ja ich steh son bisschen aufm Schlauch^^
Muss ich eine Tabelle tblPersonen machen und da Komplementär, Kommanditist, Stille Gesellschafter, Gesellschafter, Geschäftsführer reinpacken?
Hier sind mal die Vorgaben die ich habe. Vielleicht könnt ihr das ganze dann ein wenig besser nachvollziehen.
[Anhang gelöscht durch Administrator]
Hallo,
ZitatMuss ich eine Tabelle tblPersonen machen und da Komplementär, Kommanditist, Stille Gesellschafter, Gesellschafter, Geschäftsführer reinpacken?
Nein, so nicht.
Du benötigst (mindestens) folgende Tabellen:
- tblGesellschaften
- tblGesellschaftsformen
- Personen (nur die reinen Personendaten)
- Personenart (Komplementär, Kommanditist, Stille Gesellschafter, Gesellschafter, Geschäftsführer als
Datensätze, nicht als Feldnamen)
- Zuordnungstabelle zu Gesellschaft, Person und Personenart in diese Tabelle kommen auch die Felder für Haftsummen und Einlagen.
Was ist eigentlich das Feld Mandant in der bisherigen Gesellschaftstabelle?
In der Zuordnungstabelle entsteht je Person ein Datensatz.
Hat eine Gesellschaft 20 Personen sind das 20 Datensätze worin sich die GesellschaftsID wiederholt.
Zitat- Personenart (Komplementär, Kommanditist, Stille Gesellschafter, Gesellschafter, Geschäftsführer als Datensätze, nicht als Feldnamen)
Wie meinst du das?
Hallo,
wie ich es gesagt habe.
tblPersonenArt
PersArtID Personenart
1 Komplementär
2 Kommanditist
3 Stille Gesellschafter
4 Gesellschafter
5 Geschäftsführer
Also 5 Datensätze.
Ah ja, logisch^^
Danke dir
Achso, das Feld Mandant ist ne interne Nr im bisherigen System, die übernommen werden soll. Ist auch fortlaufend von 1-...
Was muss alles in die Zuordnungstabelle? Da steh ich schon wieder aufm Schlauch -.-
Hallo,
wie bereits beschrieben:
Zitat- Zuordnungstabelle zu Gesellschaft, Person und Personenart in diese Tabelle kommen auch die Felder für Haftsummen und Einlagen.
Wobei in dieser Tabelle die Felder für Gesellschaft, Person und Personenart nur Fremdschlüsselfelder (Zahl, Long) sind.
Hi,
danke, das hatte ich nicht ganz verstanden.
Das ganze sieht dann jetzt so aus:
[Anhang gelöscht durch Administrator]
Hallo,
- Wie hängt die Tabelle tblProjekte zusammen?
- Nenne die ID Felder niemals nur ID sondern immer mit einem Bezug zur Tabelle, z.B. PersonID
- Fremdschlüsselfelder erhalten ein _F hinten, also nicht Person, sondern PersonID_F.
- Name ist als Feldname absolut Tabu, Nachname wäre besser.
In einer DB sollte es niemals gleiche Feldnamen geben.
Lege mal Beziehungen an.
Hi,
nochmal vielen Dank für die Antwort. Jede Firma hat Projekte, an denen gearbeitet wird. Das muss da i wie mit rein.
Kannst du mir mit den Beziehungen ein bisschen Helfen?
Hallo,
ZitatKannst du mir mit den Beziehungen ein bisschen Helfen?
lade die DB hier hoch, damit ich nicht von vorn anfangen muss.
Hi nochmal,
ich hab jetzt einfach mal Beziehungen gesetzt. Allerdings weiß ich nicht obs richtig ist. Für ne kurze Erklärung zu dem was ich richtig und falsch gemacht hab bin ich sehr sehr dankbar.
[Anhang gelöscht durch Administrator]
total übersehen, hier die DB
[Anhang gelöscht durch Administrator]
Hallo,
anbei ein Vorschlag.
[Anhang gelöscht durch Administrator]
Hi,
erstmal ein riesen Dankeschön dafür!!!!
Kannst mir dazu noch n bisschen was erklären?
Hallo,
ZitatKannst mir dazu noch n bisschen was erklären?
was soll ich Dir erklären?
Das Beispiel spricht doch für sich, oder wo hast Du Probleme?
Bin völliger Anfänger, wie du wahrscheinlich gemerkt hast^^
Wäre die DB denn nun bereit zu Dateneingabe?
Hallo,
ZitatWäre die DB denn nun bereit zu Dateneingabe?
an sich ja, wobei aber Dein bisheriges Formular nicht mehr verwendbar ist.
Das habe ich auch gelöscht.
Hier muss einen Hautformular (Mandant) und darin ein Unterformular (Peronen) erstellt werden.
Noch eine Frage zu den Projekten, kann ein Mandant mehrere Projekte haben?
Es ist sogar sehr wahrscheinlich, dass ein Mandant mehrere Projekte hat.
Ich weiß gar nicht wie ich dir/euch für die Hilfe danken soll.. Mega cool!!!
Hallo nochmal,
ich würde nun gern ein Eingabeformular erstellen. Dabei sollen einige Felder "Auswahlfelder" sein und die Werte sollen dann in Bestimmte Datenfelder, bestimmter Tabellen gespeichert werden. MzKlMu hat mir schon nahegelegt ein Haupt und ein Unterformular zu basteln. Leider komm ich da nicht weiter, da ich einige der Auswahlfelder überhaupt nicht mit den entsprechenden Datenfeldern der Tabelle verknüpfen kann und im Hauptformular können überhaupt keine Eingaben gemacht werden.
Lässt sich das so überhaupt realisieren?
Vielen Dank schonmal!
Hallo,
anbei die DB mit Formularen.
Erfassung=Hauptformular, nur dieses Formular wird geöffnet.
[Anhang gelöscht durch Administrator]
Hi,
vielen vielen Dank, das ist richtig gut =)
Nur eine Sache hätte ich noch. Hier wird ja nun davon ausgegangen, dass nur die Firmendaten eingegeben werden, oder sehe ich das irgendwie falsch?^^
In meinem Fall ist es aber so, dass wirklich alle Daten eingegeben werden müssen... Also auch Name etc. Das wird in deiner Lösung ja alles schon aus einer Tabelle gezogen.
Viele Grüße und nochmal vielen vielen Dank!!
André
Hallo,
ich habe nicht ganz verstanden, was Du mir sagen willst.
Üblicherweise gibt man aber nicht alle Daten über ein Formular ein. Du könntest z.B. ein extra Formular öffnen zur Eingabe eines neuen Namens, wenn der Name noch nicht erfasst ist.
Hi,
daran habe ich auch gedacht, war aber nicht sicher, weil du ja geschrieben hast, es wird nur das eine Formular geöffnet^^
Vielen Dank nochmal =)
Moin Moin,
ich wollte jetzt noch ein kleines Formular erstellen um die Personen- und Projektdaten einzugeben, aber das Formular zeigt mir in der Formularansicht nichtmal die Textfelder an. Könnt ihr mir da bitte nochmal Helfen?
Vielen Dank im voraus und Viele Grüße
André
Hallo nochmal,
ich hätte da noch ein Problem. Und zwar werden die Daten, die ich eingebe, gar nicht in den entsprechenden Tabellen gespeichert. Woran kann das liegen?
Viele Grüße
André
Hallo,
ZitatUnd zwar werden die Daten, die ich eingebe,
wo gibst Du diese ein, über ein selbsterstelltes Formular?
Zitatgar nicht in den entsprechenden Tabellen gespeichert. Woran kann das liegen?
Die Formulare müssen eine Datenherkunft haben (Tabelle/Abfrage) und die Formularfelder müssen an die Tabellenfelder gebunden sein. Letzteres ist der Steuerelementinhalt.
Nur dann werden die Eingaben auch in der Tabelle gespeichert. Kannst Du in meinem Beispiel sehen.
Moinsen,
Vielen Dank für die Antwort. Ich habs leider erst jetzt wieder geschafft hier rein zu schauen. Egal ob ich selbsterstellte Formulare nutze oder, das, was du Vorgegeben hast. Die Daten werden i wie nicht in den Tabellen gespeichert bzw. beim löschen eines Datensatzes nicht entfernt.
Moinsen nochmal,
jetzt scheint alles zu funktionieren. Vielen lieben Dank nochmal!!
Viele Grüße
Hallo nochmal,
ich hätte da noch eine Frage zur Aufteilung der DB. Ich habe die DB nun in FE und BE eingeteilt. Kann ich jetzt das FE einfach kopieren, damit ich es mehreren Nutzern zur Verfügung stellen kann? Das geht aus dem Microsoft Artikel irgendwie nicht so richtig hervor.
Vielen Dank schonmal
Hallo,
ZitatKann ich jetzt das FE einfach kopieren, damit ich es mehreren Nutzern zur Verfügung stellen kann?
Ja, ein Backend für alle gemeinsam auf dem Server/Zentralrechner und für jeden User sein eigenes FE. Tabelle des BE sind dann jeweils zu verknüpfen.
Hi,
ich finde keine Mögöichkeit Pfade zu ändern. Die DB wird einmal aufgeteilt, sodass das FE auf dem Client bleibt und das BE auf dem Server gespeichert wird. Kopiere ich jetzt das FE auf nen anderen Client, stimmt der Pfad nicht mehr (logisch) aber ich finde keine Möglichkeit das zu ändern. (Access 2013)
Nochmals vielen Dank =)
Hallo,
Zitatstimmt der Pfad nicht mehr
Wieso stimmt dann der Pfad nicht mehr?
Der Pfad zum Backend ist doch für jeden Client immer gleich.
Die Tabellen des Backends kannst Du über "Externe Daten"
verknüpfen.
Vielen Dank