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.

Excel 2013 VBA für Profis

Listenfeld füllen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Listenfelder sind optimal geeignet, um Elemente von Auflistungen wie Tabellenblättern anzuzeigen.

Transkript

Jetzt geht es darum diese Liste, die können Sie mit F5 nochmal ansehen, mit ihren fiktiven Werten, Zeile 1, 2, 3, mit sinnvollen Werten zu füllen. Also zum Beispiel mit allen Tabellenblättern und deren Namen. Also nach dem Abbrechen mit Alt+F11 erstmal in die Datei und hier überhaupt erstmal verschiedene Tabellenblätter eingefügt. Die werde ich direkt umbenennen. Also, damit Sie sehen können, dass es mit freien Namen funktioniert, also hier mit Rechtsklick Umbenennen, 3. Tabelle. Dann nennen wir das vielleicht noch eine Tabelle. Und völlig beliebig Fünf ist Trümpf. Nur damit es nicht zufällig so markiert ist und so benannt, wie Sie am Anfang sind. Und die schiebe ich mit gedrückter Maustaste auch nochmal boshaft nach hinten. Es muss also nachher diese Reihenfolge ermittelt werden. Dafür braucht es eine Schleife. Und hier bietet sich eine For-Each-Next-Schleife an, die nämlich alle Tabellen abarbeiten kann. Mit Alt+F11 wechsle ich wieder in den Code. Mit einem Doppelklick hier in das UserForm_Initialize. Und werde jetzt diesen Bereich ersetzen. Ich mache das mal davor. Also, wir brauchen eine Variable für ein einzelnes Tabellenblatt. dim, das ist ein Worksheet-, wks-Objekt. Ich nenne das immer ganz lieblos wksDieses Ein Worksheet ist ein Tabellenobjekt. Und dann kann ich schreiben: Für jedes Tabellenblatt in der Auflistung, also: for each wksDieses in activ wäre die aktuelle Datei, die der Benutzer gerade sieht. Oder, wenn Sie es so haben wollen: ThisWorkbook ist die Datei, in der sich der Code befindet. Das mache ich jetzt mal, das ist sicherer. Dann habe ich nicht zufällig noch eine zweite Datei offen. Also in dieser Arbeitsmappe und in deren Worksheets-Auflistung, da will ich jetzt für jede einzelne Tabellenbezeichnung deren Namen hinzufügen, also mit AddItem einfach von wksDieses die Name-Eigenschaft. Das war es schon. Die Schleife wieder zu mit einem Next. Und ich werde mal die erste markieren, also mit einer Index = 0. Das bedeutet jetzt, beim Öffnen des Formulars werden alle Namen der Tabellen ausgelesen und mit AddItem hinzugefügt in dieser Schleife. Speichern einmal vorher und dann mit F5 sehen Sie jetzt in der richtigen Reihenfolge alle ausgelesen. Und mit dieser Auswahl könnte ich jetzt im OK irgendwas machen, aber darum ging es ja erstmal gar nicht. Sinnvollerweise, wenn Sie also von dem Benutzer irgendwas wollen, von dem Sie wissen, welche Auswahl anliegt, schreiben Sie das in eine Liste. ComboBox oder ListBox wie hier ist dabei technisch gleichrangig. Und dann kann er daraus nur noch auswählen. Und wenn er nichts auswählt, haben Sie ihm sogar schon die erste Tabelle, die erste Zeile ausgewählt. Damit ist das also hier so weit erstmal fertig.

Excel 2013 VBA für Profis

Nutzen Sie die Möglichkeiten der Programmiersprache VBA in Excel 2013, um eigene Dialoge zu erstellen, auf andere Arbeitsmappen zuzugreifen und wichtige Funktionen einzusetzen.

4 Std. 59 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!