Kann überprüft werden, ob ein Objekt eine bestimmte Methode ohne Fehlerbehandlung in VBA unterstützt?Wie überprüft man, ob Objekt Methode in VBA unterstützt?
Ich habe zahlreiche Duplikate gefunden, die die Frage nach beispielsweise JavaScript und Symphony2 stellen, aber noch nicht in VBA.
Ich möchte einen .sendkeys "{ENTER}"
Befehl zu einem ie.document
Klassenelement verwenden und lernen, wie man überprüft, ob das Objekt eine Methode unterstützt, erlaubt mir, saubereren Code auf lange Sicht zu schreiben.
Beispielcode:
Set elements(17) = ie.document.getElementsByClassName("ng-binding ng-scope")
for each item in elements(17)
item.sendkeys "{ENTER}"
next item
Vielen Dank @ Mat Becher, für Ihre überkomplette, und direkte Antwort. Ich habe wenig von der Erklärung verstanden und werde auf diese Frage zurückkommen, um zu sehen, ob ich der Argumentation folgen kann, sobald ich eine breitere Basis und ein besseres Verständnis der Konzepte/Terminologie habe. Soweit ich weiß, zählt es nicht für "ohne Fehlerbehandlung", aber ich möchte Ihnen für den Beitrag danken, ich hatte das letzte "Nächste" nicht hinzugefügt, was ein Problem war, das mich dazu brachte, diese Frage zu stellen in erster Instanz. –
@ a.t. Sie können sich "früh gebunden" als alles vorstellen, was auf eine Bibliothek verweist, auf die von Ihrem Projekt verwiesen wird (siehe Extras> Referenzen): Diese werden zur Kompilierungszeit aufgelöst. "spät gebunden" ist jeder Aufruf, der gegen ein "Objekt" oder "Variante/Objekt" ausgeführt wird - VBA löst das Element zur Laufzeit auf (und löst den Fehler 438 aus, wenn es nicht gefunden wird). –
Vielen Dank für die Einführung, es führte mich zu einer ausführlicheren Erklärung der Laufzeit und kompilieren Zeitcode [hier.] (Https://stackoverflow.com/questions/846103/runtime-vs-compile-time#846421) –