Was ist der Unterschied zwischen "Formularsteuerelementen" und "ActiveX-Steuerelement" in Excel 2010?

96

Bei der Verwendung von Microsoft Excel 2010 sind mir zwei Arten von Steuerelementen aufgefallen, die in ein Dokument eingefügt werden können: Formularsteuerelemente und ActiveX-Steuerelemente .

Geben Sie hier die Bildbeschreibung ein

Was ist der Unterschied zwischen ihnen?

Rubens Mariuzzo
quelle
8
Die Formularsteuerelemente werden in Excel selbst eingebrannt. Die ActiveX-Steuerelemente werden aus separaten DLLs geladen. Sie können zusätzliche ActiveX-Steuerelemente hinzufügen, keine Formularsteuerelemente.
Hans Passant
Danke @HansPassant! Soweit ich weiß, sollte ich mit Form Control beginnen, während die Arbeit erledigt werden kann, ohne sich auf ActiveX Controls zu verlassen.
Rubens Mariuzzo

Antworten:

96

Google ist voll von Informationen dazu . Wie Hans Passant sagte, sind Formularsteuerelemente in Excel integriert, während ActiveX- Steuerelemente separat geladen werden.

Im Allgemeinen verwenden Sie FormsSteuerelemente, diese sind einfacher. ActiveXSteuerelemente ermöglichen ein flexibleres Design und sollten verwendet werden, wenn die Arbeit mit einem Basissteuerelement einfach nicht ausgeführt werden kann Forms.

Die Computer vieler Benutzer vertrauen standardmäßig nicht ActiveX und werden deaktiviert. Dies muss manchmal manuell zum Trust Center hinzugefügt werden. ActiveXist eine Microsoft-basierte Technologie und wird meines Wissens auf dem Mac nicht unterstützt. Dies müssen Sie auch berücksichtigen, falls Sie (oder jemand, dem Sie eine Arbeitsmappe zur Verfügung stellen) entscheiden, diese auf einem Mac zu verwenden.

StoriKnow
quelle
Ich suchte nach dieser Art von Antwort / Erklärung. Jetzt verstehe ich die Vor- und Nachteile von Formularsteuerelementen über ActiveX. Ich werde Formularsteuerelemente verwenden, während die Arbeit mit ihnen erledigt werden kann. Danke Sam und danke @HansPassant
Rubens Mariuzzo
Kein Problem - gerne helfen. Wenn Sie mit der bereitgestellten Antwort zufrieden sind, denken Sie bitte daran, dies so zu markieren, dass andere wissen, dass eine Antwort bereitgestellt wurde.
StoriKnow
Kein Problem, ich bin immer geduldig und warte auf andere Meinungen.
Rubens Mariuzzo
1
@ Sam, ich finde deine Antwort am hilfreichsten. Aber vielleicht sind Sie bereit, Ihrer Antwort noch etwas hinzuzufügen, was ich auf die harte Tour herausfinden musste. ActiveX-Steuerelemente "benehmen" sich manchmal schlecht und ändern automatisch die Größe. mrexcel.com/forum/excel-questions/… oder blogs.technet.com/b/the_microsoft_excel_support_team_blog/…
Ralph
1
Jemand hat in diesem mrexcel.com-Thread einen Link zurück zu diesem StackOverflow-Thread gepostet, der die unglaublichen Steuerelemente zum Schrumpfen und Erweitern übertrifft, in denen viel über die Probleme mit ActiveX-Steuerelementen diskutiert wird.
Tim Joy T-Square Consulting
26

Ein wichtiger Unterschied ist, dass ActiveX-Steuerelemente als Objekte angezeigt werden, die Sie in Ihrem Code verwenden können. Versuchen Sie, ein ActiveX-Steuerelement in ein Arbeitsblatt einzufügen, rufen Sie den VBA-Editor (ALT + F11) auf und Sie können darauf zugreifen die Steuerung programmatisch. Sie können dies nicht mit Formularsteuerelementen tun (Makros müssen stattdessen jedem Steuerelement explizit zugewiesen werden), aber Formularsteuerelemente sind etwas einfacher zu verwenden. Wenn Sie nur etwas Einfaches tun, spielt es keine Rolle, welches Sie verwenden, aber für fortgeschrittenere Skripte bietet ActiveX bessere Möglichkeiten.

ActiveX ist auch anpassbarer.

iliketocode
quelle
1

Seien Sie vorsichtig, in einigen Fällen führt das Klicken auf ein Formularsteuerelement oder Active X-Steuerelement zu zwei unterschiedlichen Ergebnissen für dasselbe Makro - was nicht der Fall sein sollte. Ich finde Active X zuverlässiger.

JLG
quelle
13
Dies wäre eine Antwort, wenn Sie ein Makro bereitstellen könnten, das mit einem ActiveX / Form-Steuerelement unterschiedliche Ergebnisse liefert.
Jacques Gaudin
1

Beachten Sie auch, dass ActiveX-Steuerelemente nur unter Windows funktionieren, während Formularsteuerelemente sowohl unter Windows- als auch unter MacOS-Versionen von Excel funktionieren.

maciej
quelle