Ich frage mich, ob es möglich ist, eine Combobox auf einem Benutzerformular zu füllen, wenn mit Arbeitsblattnamen aus einer geschlossenen Arbeitsmappe initialisiert. Ich habe das ausführlich untersucht und eine Lösung gefunden, die einen Verweis auf ActiveX Data Objects 2.5 oder höher erfordert. Aber gibt es einen anderen, einfacheren Weg? Vielen Dank!Füllen Combobox auf Benutzerformular
Antwort
Ja, es ist möglich.
Dim wb as workbook
Dim ws as worksheet
set wb = application.workbooks.open(<your workbook>, true, true)
set ws = wb.worksheets(<your worksheet>)
Nach dem ws Einstellung mit Ihnen Arbeitsblatt können Sie die Daten zugreifen, die Sie benötigen.
P.S. Entschuldigung mein Englisch
Das OP möchte an einem ** geschlossenen ** Arbeitsbuch arbeiten. Sie schlagen jedoch vor, das Arbeitsbuch zu öffnen. Wie beantwortet das die Frage? – Ralph
Hi @Ralplh, ich verstehe, dass im Moment der Combobox die Arbeitsmappe geschlossen wird, und dann muss er die Daten erhalten. Wahrscheinlich habe ich die Frage falsch verstanden. – Kellsens
Soweit ich die Frage verstanden habe: Die Werte für das Kombinationsfeld sind in einer geschlossenen Excel-Datei. Das OP möchte das Kombinationsfeld auffüllen, ohne die Excel-Datei (in Excel) zu öffnen. Aber da die Werte (um das Kombinationsfeld zu füllen) in dieser Excel-Datei sind, sucht er/sie nach anderen Mitteln, um diese Excel-Datei zu lesen (außer das Öffnen der Excel-Datei). Eine Möglichkeit, dies zu erreichen (Lesen von Daten aus einer Excel-Datei, ohne sie in Excel zu öffnen), ist die Verwendung von 'ActiveX Data Objects 2.5 oder höher '. Aber vielleicht habe ich die Frage einfach nicht richtig verstanden. – Ralph
- 1. Füllen Sie ein Kombinationsfeld mit einem Zeichenfolgenarray in einem Benutzerformular
- 2. Füllen Combobox aus einer Spalte in jtable
- 3. Füllen Sie eine Combobox und Ergebnisse auf DataGridView
- 4. Füllen Sie eine WPF Combobox aus Service
- 5. Füllen ComboBox mit Liste der verfügbaren Schriftarten
- 6. Angularjs - Füllen Sie eine ComboBox dynamisch (Array())
- 7. Füllen ComboBox in GridView-Header mit Spaltendaten
- 8. Kombinieren Sie Combobox aus einem Benutzerformular zu mehreren Blättern basierend auf den angegebenen Werten
- 9. Benutzerformular erstellen
- 10. VBA: Bestücken ListBox ActiveX-Steuerelement, auf Arbeitsblatt und nicht Benutzerformular
- 11. wieder öffne ein Benutzerformular
- 12. Excel Benutzerformular Textfeld Verhalten
- 13. Dynamischer Diagrammtitel aus Benutzerformular
- 14. Kopie einfügen von Benutzerformular
- 15. Füllen einer ComboBox (ajaxToolkit) von einer Ajax WebMethod
- 16. C# databinding combobox Feld und füllen Liste von anderen Liste
- 17. Arbeitsmappe mit Benutzerformular schließen
- 18. Schaltfläche Kennwort und Benutzerformular
- 19. vb.net Füllen Combobox mit kommagetrennten Werten aus einer INI-Datei
- 20. Füllen einer datagridview-Combobox-Spalte mit subsonic & vb.net
- 21. So füllen Sie Listenwerte in einer Combobox in JavaFx
- 22. vb.net - Füllen einer Combobox mit mehreren Eigenschaften aus Objekt
- 23. verschiedene Farben auf ComboBox
- 24. C# Datenbindung auf Combobox
- 25. Nullwert auf Combobox - codeigniter
- 26. Zend - Combobox-Wert in Abhängigkeit von einem anderen Combobox-Wert
- 27. VBA Benutzerformular Dropdown-Menü Ausführung
- 28. Benutzerformular in mehrere Arbeitsblätter integrieren
- 29. Füllen Combobox der Tabelle Zelle mit unterschiedlichen Wert basierend auf der Auswahl der Tabellenzeile in Java
- 30. Füllen Sie eine Combobox mit in vb.net basierend auf einer Auswahl eines anderen Kombinationsfelds aus Datenbank
Vielleicht ist dieser Beitrag, was Sie suchen: http://StackOverflow.com/Questions/36992630/vba-change-from-a-cell/36992772#36992772 Schauen Sie speziell auf die Funktion 'GetData' (am Ende des Codeblocks). Verwendet die ExecuteExcel4Macro-Methode. – Ralph
Ich benutzte das vorher zum Abrufen von Tabellenheadern und dachte nicht daran, es für Blattnamen zu verwenden. Das mag den Trick machen. Danke, @Ralph! – Brian