VBA-Programmierung mit Klassen

Mit Klassen lässt es sich einfacher programmieren

Die Programmierung mit Klassen gilt als schwierig. Oft wird darauf ganz verzichtet, weil es auch irgendwie ohne geht. Das funktioniert zwar, aber es geht auch besser: Mit Klassen lässt es sich einfacher programmieren und so schwierig ist das im Grunde genommen gar nicht. Sie werden sehen, in der Klassenprogrammierung wird auch nur "mit Wasser gekocht".

Die Beispiele werden innerhalb einer Access-Datenbank ausgeführt. Sie funktionieren mit minimalen Änderungen auch in Word oder Excel.

Inhaltsverzeichnis

Beitrag bewerten

Ihre Wertung:

 

Hallo,

es tut mir leid, wenn es nicht gut genug beschrieben war. Ich versuche es mal so:

Auf dem Testformular "frmMehrfachaufruf" der Seite http://www.akademie.de/direkt?pid=50808 müssen Sie lediglich eine Schaltfläche anlegen, deren BeimKlicken-Eigenschaft Sie auf [Ereignisprozedur] stellen und dann mit den drei Pünktchen rechts daneben in den Code wechseln. Damit haben Sie das erledigt, was im Text als "Damit das Formular als Klasse erkannt wird..." beschrieben ist. Eine echte Funktionalität braucht die Schaltfläche gar nicht.

Den folgenden Code aus dem Text müssen Sie in ein Standard-Modul kopieren, also gerade nicht in den Code, der zu einem Formular/Bericht gehört. Sie können im Datenbank-Fenster das Menü Einfügen/Modul aufrufen, das ist dann ein Standard-Modul. Wenn Sie den Code dort hinein kopieren, sind die beiden Variablen "m_frmEins" und "m_frmZwei" bereits Modul-öffentlich.

Fehlerhaft wäre jedoch der folgende Code:

Option Explicit

Sub Formularzwilling()
Dim m_frmEins As Form_frmMehrfachaufruf 'hier falsch!
Dim m_frmZwei As Form_frmMehrfachaufruf 'hier falsch!

Set m_frmEins = New Form_frmMehrfachaufruf
Set m_frmZwei = New Form_frmMehrfachaufruf

m_frmEins.Visible = True
m_frmZwei.Visible = True
End Sub

Dabei wären die beiden Variablen nicht öffentlich, sondern nur lokal deklariert und die Formulare sofort wieder verschwunden. Davor sollte die von Ihnen zitierte Bemerkung warnen.

Um das Beispiel zum Laufen zu bringen, stellen Sie den Cursor in diese Prozedur "Formularzwilling" und drücken die F5-Taste. Beachten Sie bitte die im Text folgende Anmerkung, dass diese Formulare nun deckungsgleich aufeinander liegen, so dass "gefühlt" nur ein Formular vorhanden ist.

Ich hoffe, dass Ihnen das so weiterhilft.

Mit freundlichen Grüßen,
Lorenz Hölscher

Ich habe gehofft, dass ich bessere Informationen bekomme.
Doch leider weit gefehlt.
Wie muß ich die m_frm Variablen Modul Veröffentlichen.
"Beachten Sie vor allem, dass die beiden m_frm...-Variablen Modul-öffentlich sind."
Das Beispiel bring ich leider nicht zum Laufen.

Der Code von clsPersons (Plural!) steht direkt ohne Download auf http://www.akademie.de/direkt?pid=50805 und derjenige von clsPerson (Singular!) auf http://www.akademie.de/direkt?pid=50769 . Sie können ihn dort jeweils markieren und über die Zwischenablage in Ihre (Klassen-!)Module einfügen.

Mit freundlichen Grüßen, Lorenz Hölscher

Hallo,

ich habe den Code von der clsPersons nicht gefunden

Bitte helfen Sie mir weiter.

Mitglied werden, Vorteile nutzen!

  • Sie können alles lesen und herunterladen: Beiträge, PDF-Dateien und Zusatzdateien (Checklisten, Vorlagen, Musterbriefe, Excel-Rechner u.v.a.m.)
  • Unsere Autoren beantworten Ihre Fragen

Inhalt

Downloads zu diesem Beitrag

Newsletter abonnieren