Ich arbeite in Excel an einem VBA-Projekt und möchte, dass ein Teil meines Makros den Benutzer auffordert, einen Bereich von Zellen * auszuwählen, mit dem das Makro später etwas anfangen kann.
* Die Art der Eingabeaufforderung, die Sie beim Erstellen eines Diagramms erhalten, oder Verwenden einer GUI zum Einfügen einer Funktion
z.B. Hier:
und hier:
Ich suche daher nach etwas in der Art von
%Vor% Ist es möglich, auf die integrierte Excel-Funktionalität zuzugreifen, um das auszuführen, was ich als " CreateFunctionArgumentsPrompt()
Hinweis: Dies ist vergleichbar mit SO Frage Excel VBA erhalten Reichweite von Benutzer ausgewählten Bereich mit der Maus aber unterscheidet sich in diesem
Dies verwendet nicht das eingebaute Bild, das Sie oben gezeigt haben, erlaubt Ihnen aber, einen Zellbereich nach einer Eingabeaufforderung auszuwählen:
%Vor%Dies basiert auf der Antwort in diese MrExcel Antwort .
So sieht es aus:
Sie suchen nach einem Dialogfeld (auch als allgemeiner Dialog bezeichnet). Leider können Sie nicht zu den vorhandenen integrierten Objekten hinzufügen (zumindest nicht mit VBA).
Wie oben erwähnt, können Sie diese Funktionalität mit InputBox und Forms nachahmen. Das heißt, ich habe proprietäre Programme gesehen, die auf Excel basieren, wo das Unternehmen die Art von Funktionalität hinzufügt, die Sie beschreiben. Ich glaube jedoch, dass Sie C ++ oder eine tiefere Sprache verwenden müssen, um DLLs zu erstellen, die das ausführen können
Eine Sache, die über Dialoge bemerkenswert ist: Excel hat eine eingebaute Gemeinsame Datei Dialogobjektbibliothek , mit der Sie gängige Dateiserver-Dialogfelder (wie Öffnen, Speichern und Auswählen) mit vorhandenen Windows-API-Dialogen erstellen können.
Tags und Links vba excel-vba excel-2010