Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Eine Datenbank mit Access 2013 richtig entwickeln

Transparente Register

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Das Register-Steuerelement kennt noch eine andere Variante, bei der es durchsichtig ist und die Änderungen per VBA erfolgen. Das erspart Ihnen die mehrfache Anordnung ähnlicher Unterformulare.

Transkript

Ich habe mit ein ganz klein wenig Programmierung dafür gesorgt, dass nicht bei Endlosformularen der komplete Kopf weggeschmissen wird, sondern wie bei den Mittarbeitern zu sehen. Hier nur das eingebettete Unterformular mit der Beschriftung und dass die Überschriften für die Spalten einfach erhalten bleiben. Und zwar egal wie viele es gibt. Ich muss über das Formular eigendlich nichts mehr wissen, außer das da Labels drauf sind, die ich erhalte. Das ist im Moment konkret für das Formular Mittarbeiter. Das ist natürlich auf Dauer unpraktisch. Das müsste ich jetzt für Umsätze, für Niederlassungen machen. Ich kann das hier in eine Prozedur auslagern und dann diesen Parameter übergeben, aber eigendlich währe es viel inteligenter ein anderes Problem auch noch aufzuräumen nähmlich den optischen Müll hier. Ich habe hier ein relativ breites Formular. Dieses ist schon schmaler. Das Unternehmen ist noch schmaler und die Umsätze sind entsprechend auch zu kurz. Das sieht ehrlich gesagt furchtbar aus. Das können Sie zu Fuß nachbessern. Sie müssen im Entwurf gucken, dass die alle an der gleichen Position beginnen. Gleich breit, gleich hoch sind, aber ich kann Ihnen gleich sagen, das macht nicht besonders viel Spaß. Das nächste was wir wieder einfügen, dann aus irgend einem Grund kommt noch ein neues dazu. Das passt schon wieder nicht. Jedes mal beim umschalten sieht mann dann meistens hier oben sogar schon so ein bischen hin und her springen. Das lohnt sich nicht. Machen Sie es lieber anders herum. Versuchen Sie nicht vier eingebettete Unterformulare nachzubessern, sondern beschränken Sie sich auf eines, dessen Inhalt ausgetauscht wird. Das hat übrigens noch einen zweiten erfreulichen Nebeneffekt. Der fällt erst auf, wenn Sie viele Daten haben. Wenn Sie dieses Formular öffnen muss es bevor es ganz auf dem Bildschirm kommt alle seine Daten geladen haben. Nun reden wier hier gerade über zwölf Datensätze. Das ist nicht der Rede wert. Aber es kann natürlich sein, dass Sie größere Datenmengen haben. Dann haben Sie hier mal eben einige zehn Tausend Daten zu laden. Und zwar mal vier, mal zehn, wenn Sie Pech haben wie viel Unterformulare da drauf sind. Das geht schon merklich in den Zeitaufwand. Wenn Sie statdessen nur ein Formular, ein Unterformular drauf haben, welches durch klick hier oben umgeschaltet wird. Dann laden Sie immer nur genau eine Menge an Daten und beim Umschalten die nächste Menge. Da ist ein bischen Zeitverlust drinn klar, aber nicht mehr als am Anfang direckt alle vier gleichzeitig zu laden. Also, ich werde diesen Entwurf umbauen und ganz gnadenlos den Rest rausschmeisen. Also beim Unternehmen. Hier ist etwas eingebettet. Und tschüss. Da kann eigendlich alles erstmal weg im Unterformular. Das war ein Klick zu viel. Das da drinnen wollte ich natürlich entfernen. Da muss mann immer aufpasse, was gerade markiert ist. Man kann es zur Not hier sehen. Sie könnten es auch da oben auswählen, aber im Moment scheint es geklapt zu haben. Ich habe jetzt also ein leeres Registersteuerelement. Und Sie erinnern sich, wenn ich hier Controls herein ziehe, dann sind sie sozusagen gefressen worden. Die waren also wirklich Teil der Seite. Der Page. Das wird sich jetzt ändern. Ich markiere jetzt hier das gesamte Registersteuerelement und stelle seine Hintergrundart von normal sprich das enthält elemente auf. Doppelklick. Transparent. Das scheint erst einmal nur eine optische Änderung zu sein, aber hat gravierende Auswirkungen. Bei der Gelegenheit werde ich das erst einmal umbenennen. Multipage ist die englische version, also mpg. Und dann nenne ich es einfach mpg Daten. Der Unterschied ist nähmlich. Jetzt ziehe ich wieder ein Unterformular herein. Ich hole hier ganz schnöde eines aus der Entwurfssteuerelementeliste. Natürlich nicht Navigationssteuerelement, sondern da ist das Unterformular. Und kann jetzt hier ein Element nehmen. Sie haben es gesehen ich habe es nicht in das Element reingelegt, sondern ich schiebe es jetzt da drauf, da hinter. Wie immer Sie das nennen wollen. Es hat mit dem Register nichts zu tun. Und auch im Register kann ich jetzt hier schön umschalten. Da passiert nicht wirklich was. Ich bin jetzt auf Page Mittarbeiter. Wenn Sie das im Ergebniss angucken. Also in der Formularansicht. Achso die gibt es natürlich alle nicht mehr. Da muss ich mal vorübergehend alles kommentieren. Das währe jetzt praktisch Anstatt die alle einzeln zu kommentieren. Einem Aufwasch, das geht. Per Rechtsklick brauchen Sie die Bearbeiten Symbolleiste. Das schiebe ich mir mal hier hin. Da gibt es hier ganzen Block auskommentieren. Und dann kann ich es mit F5 oder da oben im Pfeil weiterlaufen lassen. So und jetzt kann ich hier umschalten. Da scheint nicht wirklich viel zu passieren. Aber ich werde tatsächlich dafür sorgen, dass jetzt in diesem Unterformular, welches ich dann noch auf schöne Form bringen kann immer die passenden Inhalte drinn sind. Dafür muss es natürlich einen vernünftigen Namen kriegen. Also in der Entwurfsansicht. Hier das Unterformular. Das heißt dann sfmDetails. Ganz allgemein. Und Sie sehen es hat im Moment keinen Herkunftsobjekt. Das werde ich ihm beibringen. Und zwar mit jedem Klick hier oben. Also, da muss ich übrigens Design verwenden. Ausschalten. Sie haben eben bemerkt. Man kann nicht vernünftig sehen, welcher angeklickt ist. So, jetzt verhält er sich wieder vernünftig. Jetzt sieht man das auch. Und das Ereigniss, was ich hier benötige ist das Bei Änderung Ereigniss. Also Doppelklick hier. Es wird noch nicht gleich perekt werden, aber Sie sehen dann schon einmal den Effekt, den ich brauche. Mit den drei Pünktchen bin ich im mpg Daten_change. Und jetzt frage ich einfach ab, welches von den Registern da oben drauf ist. Eigendlich gerade ausgewählt. Also ein select case. Und jetzt frage ich mal me.mpgDaten.Value Da kriege ich eine Zahl von null bis drei zurück. Null, eins, zwei, drei. Wir haben vier Register end select Und dann kann ich vergleichen, anstatt jetzt zu schreiben wenn das Ergebniss eine null ist, dann muss ich mir im Gedanken überlegen aha dann war das wohl das erste Register. Sag ich jetzt direckt vergleich das doch bitte mit der Page Mittarbeiter und deren Pageindex. Ich muss also gar nicht wissen, an welcher Position welches Register steht. Ich weis jetzt zu diesem Zeitpunkt ist der Mittarbeiter und kann dann darauf reagieren, erklären, dass dann bitte von me.smfDetails das SourceObject sein soll frmMittarbeiter. Und im anderen Fall, wenn es nähmlich entspricht me.page (was haben wir noch?) Niederlassungen.PageIndex Dann lasse ich dort das entsprechende Unterformular einfügen. Also wieder das SourceObject ist frmNiederlassungen. Mir fällt gerade auf die Mittarbeiter heißen nicht frmMittarbeiter, sondern das muss ich eben mal nachgucken. Die heißen Mittarbeiter von Unternehmen. Das würde dann natürlich einen Laufzeitfehler geben. Mittarbeiter von Unternehmen und das können wir auch mal kopieren, dann geht das ein bischen schneller. Die Rheienfolge ist übrigens herzlich wurscht. Was haben wir noch? Umsätze. Und dann ist es hier frmUmsaetze. und Unternehmen ist noch als viertes übrig. Und das sollte dann frmUnternehmen heißen. und grundsätzlich sollten Sie immer einen Case Else einbauen. Nur damit Sie Fehler, wenn es denn welche gibt schneller finden. An sich sollten diese vier so funktionieren. Einen Kompiliercheck und mit alt F11 noch einmal gucken. Umsätze, die letzten Mittarbeiter, Unternehmen. Die heißen offensichtlich auch so. Aha geht schon los. frmNiederlassungEndlos. Dann muss ich das natürlich da auch schreiben. So. Das kann der Synctagscheck nicht wissen, das ist nähmlich ein String. Aber jetzt haben wir gute Chancen. Es wird noch nicht syncronisiert sein. Nur dass Sie sichgleich nicht wundern. Aber es sollte jetzt möglich sein. Da sind die Niederlassungen, da sind die Mittarbeiter, die Unternehmen und die Umsätze. Die ganze Schönheit ist erst einmal wieder weg, aber ich habe jetzt ein einziges Control da unten drinn, welches ich ein mal in seiner Größe ordentlich einstellen kann Da muss ich natürlich gucken, dass der größte herein passt. Und dann brauche ich nur noch umzuschalten und Sie merken das ist gefühlt, so wie vorher, aber wir wissen jetzt technisch ist es anders. Es wird immer ausgewechselt, weil tatsächlich hier nur ein einziges Control drinnen ist. Und hier machen wir das nähmlich so, dass ich da ein bischen weniger Platz brauche. Der kriegt entsprechend mehr platz. Das muss ich da oben entsprechen berücksichtigen, sonst sieht es einfach komisch aus. Und der Rest wird mit Ankern gut organisiert. Also mit Anordnen - Anker quer nach oben dehnen. Dieses Element da drinnen macht das selbe mit Andordnen-Anker quer nach oben dehnen. Und Sie werden jetzt feststellen, dass es sich einfach den entsprechenden Platz nimmt. Also je nach dem. Das lässt sich jetzt mit wechselnder Bildgröße schlecht zeigen. Nimmt er sich einfach den maximalen Platz. Damit sind wir soweit erst einmal fertig. Das wird natürlich auf Dauer wieder eingebaut. Aber hier unten wechsele ich jetzt, je nach dem welches Register angeklickt wurde einfach den Innhalt aus und muss mich dann da oben später gar nicht um ein konkretes Unterformular kümmern, sondern kann einfach sagen das jenige, was gerade geöffnet ist sfmDetails macht bitte all diese Aufräumarbeiten.

Eine Datenbank mit Access 2013 richtig entwickeln

Sehen Sie einem erfahrenen Datenbankentwickler über die Schulter und lernen Sie dabei, wie Sie in Access 2013 optimale und perfekt skalierbare Datenbank anlegen und pflegen.

5 Std. 18 min (53 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!