Hallo,
kann mir jemand genau erklären, was PRIVATE SUB für Makros sind und wie man damit umgeht. Z. B. wie startet man sie.
kann mir jemand genau erklären, was PRIVATE SUB für Makros sind und wie man damit umgeht. Z. B. wie startet man sie.
die Funktion von Private Sub wird an einem Modul nicht ganz so deutlich, als wenn man sich stattdessen ein KLASSEN-Modul betrachtet.
Erstellt man ein Klassenmodul und verwendet es später in seinem "Programm", kann auf die (im Klassenmodul) private sub funktionen nicht direkt zugegriffen werden. Anders bei den public funktionen.
Genereller Unterschied ist, dass public funktionen auch außerhalb des Gültigkeitsbereiches gelten. Zu Gültigkeitsbereich siehe online Hilfe.
Wenn Du untenstehendes kompilierst, erhälst du keinen fehler, weil modul2 die sub in modul1 "sehen" kann (public)
Wenn Du in modul2 call psub1 schreibst, erhälst du einen fehler, weil modul2 die sub in modul1 "nicht sehen" kann (weil private)
Inhalt von Modul2
Inhalt von Modul1
~begin~
Option Explicit
Private Sub psub1()
End Sub
Public Sub psub2()
End Sub
~end
Besser erklärt?