Wie man die ausgewählte Form in excel-vba?

Habe ich eingefügt, eine intelligente art, und baute es zu Formen. Und wählte eine Form, indem Sie es anklicken.

Nun möchte ich, um Shape-Objekt von slected Form. Ich habe dies ausprobiert, aber es wird eine Ausnahme ausgegeben.

dim shap as Excel.Shape = ExcelApp.Selection 

Ich kann das shape-Objekt von der Iteration auf ActiveSheet.Formen oder so

dim shap as Excel.Shape = ActiveSheet.Shapes.Item(1) 

Aber wie würde ich wissen, diese Form gewählt ist oder nicht, brauche Wirklich Hilfe Danke.

Was ist die Fehlermeldung, die Sie bekommen? Haben Sie versucht, casting ExcelApp.Selection auf eine Form?
Ja, ich habe versucht die Explizite Konvertierung zu und es gibt mir die gleiche Ausnahme. Unable to cast COM object of type 'System.__ComObject', um den Schnittstellentyp " Microsoft.Office.Interop.Excel.Form'. Dieser Vorgang ist fehlgeschlagen, da der QueryInterface-Aufruf an die COM-Komponente für die Schnittstelle mit IID '{00024439-0000-0000-C000-000000000046}' konnte aufgrund des folgenden Fehler: Schnittstelle Nicht unterstützt (Ausnahme von HRESULT: 0x80004002 (E_NOINTERFACE)).
Vielleicht versuchen Sie das Programm, die hier vorgeschlagen werden: social.msdn.microsoft.com/Forums/en-US/vsto/thread/...
In VBA können Sie nicht verwenden 'Dim x As Y = irgendwas -- Sie haben, zu erklären, das Objekt auf eine eigene Zeile. Sehen Sie, wenn das (und Rachel ' s Vorschlag) hilft Ihnen.

InformationsquelleAutor Waqas | 2011-11-23

Schreibe einen Kommentar