Was ist eine öffentliche Objekt-Modul in VBA?

Ich versuche zu bekommen als in der Nähe von Funktionszeigern /abstrakte Klassen, wie kann ich in VBA.

Habe ich eine Klasse namens VerificationManager und überprüft eine Reihe von Zellen in einem paar von Tabellen übereinstimmen. Dies geschieht in unterschiedlicher Weise abhängig von den Informationen und Tabellen mit es.

Ich würde gerne in der Lage sein, um den code wiederverwendbar durch Angabe eine Methode aufgerufen werden, in einen string mit Hilfe der Application.Run Funktion. So kann ich schreiben Sie die Funktion, die änderungen.

Nun wenn ich mit Java oder C# würde ich in der Lage sein zu verlängern eine abstrakte Klasse, und schreiben Sie die Interna der Funktion. Wenn ich mit JavaScript, ich könnte speichern einer Funktion in einer Variablen und übergeben Sie die variable der Klasse und rufen Sie es von dort.

In meiner Klasse habe ich eine öffentliche Eigenschaft mit dem Namen "verificationModule", die ich auf den Namen der Funktion möchte ich es nennen.

Sub VerifyWorkLocations(empLoc As EmployerLocation)
...
    For i = 0 To empLoc.numOfEmp
        Application.Run verificationModule, empLoc.taxdescmatch, empLoc.employees(i)
    Next i
...
End Sub

Jedoch, wenn ich versuche zu nennen Application.Run ich die folgende Fehlermeldung:

Kompilieren-Fehler:

"Nur benutzerdefinierte Typen, die in öffentlichen objektmodulen werden kann
dazu gezwungen, oder von einer Variante oder zu spät gebundene übergebenen Funktionen"

Ich bereits habe versucht, indem Sie meine benutzerdefinierte Typen in einem Class Module aber im Grunde gesagt, dass ein Klassenmodul, das war der falsche Ort für ein Typ ist.

InformationsquelleAutor leeand00 | 2012-09-24
Schreibe einen Kommentar