Es ist nicht kompliziert:
Wenn Sie eine Prozedur oder Funktion verwenden , die Sie erstellt haben, gibt es keine Referenz, die hinzugefügt werden muss.
Wenn Sie eine Prozedur oder Funktion verwenden , die Sie nicht erstellt haben, müssen Sie einen Verweis hinzufügen.
Wenn Sie F1 drücken, während sich der Cursor auf einer Anweisung befindet, wird die Hilfe zu dieser Funktion/Prozedur geöffnet. Die Montage ist in der Hilfe angegeben.
Wenn Sie Excel verwenden müssen, benötigen Sie generell den Verweis auf Office (das die grundlegenden Objekte für Office-Anwendungen bereitstellt) und einen Verweis auf Excel (um Zugriff auf die spezifischen Objekte, Prozeduren und Funktionen von Excel zu erhalten)
Wenn Sie Word verwenden, benötigen Sie den Verweis auf Office und Word.
Um das Makro zu vereinfachen, sollte ein Array von Strings zurückgegeben werden, es sei denn, Sie können einen Bereich als Parameter an die Funktion ExecuteExcel4Macro() übergeben. Alles, was Sie noch tun müssen, ist, das Array an die RowSource-Eigenschaft des Kombinationsfelds zu binden. (Um zu überprüfen, ob es sich bei dem vom Makro zurückgegebenen Wert tatsächlich um ein Array von Strings handelt, konvertieren Sie ihn, falls nicht)
Es ist auch möglich, dies wie in dem von d.roger vorgeschlagenen Link zu tun.
Die Verwendung von ADO dafür ist ein bisschen so, als würde man eine Atomwaffe einsetzen, um eine Mücke zu töten, aber es ist weitgehend verwerflich. (solange wir das Prinzip der ODA verstehen)
Einfach ausgedrückt handelt es sich bei ADO um eine Reihe von Tools, mit denen Sie auf Daten zugreifen können, unabhängig davon, ob es sich um eine SQL- oder Access-Datenbank, eine Excel-Datei usw. handelt.
Es verwendet eine Datenbank-Engine, SQL-Abfragen und einen Zeiger zum Abrufen von Daten. Wir öffnen eine Verbindung, indem wir die zu verwendende Datenbank-Engine und die Datei angeben, wir stellen eine Frage an die Datenbank-Engine (die SQL-Abfrage) und wir durchsuchen das Ergebnis der Abfrage mit dem Zeiger.