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 2016 VBA Grundkurs

Eigene Datentypen mit Type

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Anstatt Ihre Daten mühsam in vielen verschiedenen Variablen abzulegen, können Sie auch "Sammelvariablen" erzeugen. Diese enthalten dann gleich mehrere Werte auch völlig unterschiedlicher Datentypen.

Transkript

Ich möchte Ihnen jetzt noch eine besondere Version eines Datentyps zeigen. Es wird bei der Gelegenheit immer gerne behauptet, es würde ein neuer Datentyp entstehen, aber in Wriklichkeit ist es ein Bündel von vorhandenen Datentypen. Und ich will Ihnen das am Beispiel eines Dateiinfos zeigen, wo Sie mehrere Informationen auf ein Mal brauchen. Also würden Sie dort möglicherweise, ich mache das hier schonmal Public in der ModVarKonsDLL, würden Sie also dort möglicherweise mehrere Public-Variablen hinterlegen. Ich schreibe schonmal direkt dazu: Dies ist für Type. So wird das Schlüsselwort gleich lauten. Und ich erfinde dort Public p_strDateiname As String und entsprechend Public p_strPfad As String und was brauchen wir noch von einer Datei, also zum Beispiel die Größe, p_long, in Bytes ist es eine ganzzahlige Größe, natürlich keine Umlaute, kein ß, As Long und schließlich noch p_datDatumGespeichert As Date. Das ist soweit hinterlegt. Und jetzt könnte ich hier in diesem Modul oder in jedem beliebigen anderen, es ist ja eine Public-Deklaration, eine neue Prozedur schreiben, die heißt beispielsweise: sub DateiInfoMerken. Und jetzt möchte ich gerne diesen Variablen was zuweisen. Also p_ soweit weiß ich es noch, kleines p würde reichen, ist aber egal. Strg+Leertaste und sehe jetzt hier viele viele Public-Variablen und Konstanten auch. Jetzt müssen Sie aus diesen Public-Variablen herausfinden, welche zu Ihren Dateiinfo gehört. Da können Sie natürlich an der Stelle einfach immer das Wort Datei rein schreiben. Das ist aber auch nicht immer praktisch. Also sagen wir den Dateinamen, der ist gleich abc.xlsm oder so. Jetzt muss ich die nächste rausfinden, also sagen wir: Datum gespeichert. Das sei völlig egal. 01.01.2016 Das macht es mühsam, vor allem, wenn man es falsch schriebt. Sie müssen also für jede Variable einzeln herausfinden, dass sie einen Zusammenhang mit den anderen Variablen hat. Und Sie können immer nur eine einzige weiterreichen, beispielsweise in Parametern. Das wird sich jetzt ändern. Deswegen werde ich diese Variante erstmal hier auskommentieren, also hier die ganze Prozedur markieren und hier den Block auskommentieren und entsprechend dahinter, auch das brauche ich nicht. Stattdessen kommt jetzt die Deklaration eines Datentyps. Das schreibt sich Type, für den Datentyp, und hier kommt jetzt der eigentliche Name, also typDateiinfo, beispielsweise und hier muss es ein End-Type geben. Das wäre jetzt nur Modul-öffentlcih. Wenn ich es also Public haben will, dann sollte ich es dazu schreiben. Nur dann ist es in anderen Modulen erreichbar. Innerhalb der Definition stehen jetzt die Unterdatentypen. Das heißt, ich kann jetzt hier einfach festlegen, das erste ist ein String für den Dateinamen, As String, der Datentyp muss jetzt zwingend dahinter stehen. Das Zweite ist strPfad As String dann hatten wir noch Long als Größe, As Long. Sie sehen das ist fast identisch mit dem da oben, das hätte ich auch eigentlich übernehmen können. datDatum gespeichert As Date. Soweit ist das hier fertig. Jetzt will ich das nutzen. Was hier entstanden ist, ist noch keine Variable, sondern erst ein Datentyp. Und jetzt im modType will ich das nutzen. Ich nehme mal die gleichnamige Prozedur, die andere ist ja auskommentiert. sub DateiInfoMerken. Und jetzt muss ich erstmal eine Variable deklarieren, die diesen Datentyp einsetzt. Also nenne ich die einfach mal: dim inf für das Dateiinfo, Datei 01. Und jetzt kommt dieser Datentyp, den ich ja als Typ vereinbart habe mit diesem Präfix typ typ DateiInfo kann ich jetzt auswählen und jetzt weiß diese Variable, dass sie aus Untervariablen besteht sozusagen. Ich kann also einfach schreiben: infDatei01. und da klappen die jetzt aus. Wir haben jetzt diesen Zusammenhang hergestellt. Dass Sie also Untervariablen sind zu dieser und ich muss gar nicht erklären, dass das zum Dateiinfo gehört. Ich kann mir hier jetzt völlig beliebig was ausdenken, abc.xlsm. Den nächsten wählen, Punkt. Größe, völlig egal, 12345. Und das bedeutet, dass diese Variable viel, viel kompakter ist. Ich kann in einer einzigen Variable, die kann ich einer anderen Prozedur nämlich übergeben, dass ich in dieser einen Variablen viele Informationen speichern kann. Ich könnte zum Beispiel, sub ZeigeInfo erfinden, in der ich hier Parameter übergebe, das geht ja bei Prozeduren, wie Sie noch sehen werden, zum Beispiel hier: infDiese as TypDateiInfo und egal was die jetzt macht, diese Prozedur macht nämlich gar nichts, könnte ich diese jetzt aufrufen und sagen: Zeige Info und übergebe nur dieses inf Datei01. Eine einzige Variable, die allerdings in sich vier Informationen oder eben beliebig viele trägt. Und hier könnte ich, zum Beispiel, debug.Print schreiben, infDiese.Dateiname Obwohl ich hier nur scheinbar eine Variable übergebe, stecken in dieser Variable alle Informationen und zwar wunderbar getrennt drinnen. Der Vorteil von Type besteht also darin, und das sind vor allem zwei Vorteile, dass ich erstens zusammengefasst habe, was alles hierzu gehört, nämlich alle Informationen und dass ich die in einer einzigen Variable weiterreichen kann und immer auch, wenn ich diesen Datentypen nehme nach dem Punkt, diese Unterinformation finde, ohne dass ich raten muss oder gar so eine Menge Public Variablen verwalten muss.

Excel 2016 VBA Grundkurs

Lassen Sie sich systematisch in die Excel-Programmierung mit Visual Basic for Applications (VBA) einführen.

7 Std. 25 min (66 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Exklusiv für Abo-Kunden
Ihr(e) Trainer:
Erscheinungsdatum:30.08.2016
Laufzeit:7 Std. 25 min (66 Videos)

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!