web-dev-qa-db-fra.com

Quelle est la différence entre "Contrôles de formulaire" et "Contrôle ActiveX" dans Excel 2010?

À l'aide de Microsoft Excel 2010, j'ai remarqué deux types de contrôles pouvant être insérés dans un document: Contrôles de formulaire et Contrôles ActiveX.

enter image description here

Quelle est la différence entre eux?

88
Rubens Mariuzzo

Google regorge d'informations à ce sujet . Comme Hans Passant l'a dit, Les contrôles de formulaire sont intégrés à Excel alors que ActiveX les contrôles sont chargés séparément.

Généralement, vous utiliserez les commandes Forms, elles sont plus simples. Les commandes ActiveX permettent une conception plus flexible et doivent être utilisées lorsque le travail ne peut tout simplement pas être effectué avec un contrôle de base Forms.

La plupart des ordinateurs de l'utilisateur doivent être la valeur par défaut ne fera pas confianceActiveX et sera désactivé. cela doit parfois être ajouté manuellement au centre de confiance. ActiveX est une technologie Microsoft et, à ma connaissance, n'est pas prise en charge sur Mac. C’est quelque chose que vous devrez également prendre en compte si vous (ou toute autre personne à qui vous fournissez un classeur) décidez de l’utiliser sur un Mac.

86
StoriKnow

Une différence majeure qu'il est important de savoir est que les contrôles ActiveX s'affichent sous forme d'objets que vous pouvez utiliser dans votre code. Essayez d'insérer un contrôle ActiveX dans une feuille de calcul, ouvrez l'éditeur VBA (ALT + F11) et accédez à le contrôle par programme. Vous ne pouvez pas faire cela avec des contrôles de formulaire (les macros doivent plutôt être explicitement affectées à chaque contrôle), mais les contrôles de formulaire sont un peu plus faciles à utiliser. Si vous faites simplement quelque chose de simple, peu importe ce que vous utilisez, mais pour les scripts plus avancés, ActiveX offre de meilleures possibilités.

ActiveX est également plus personnalisable.

22
iliketocode

Attention, dans certains cas, cliquer sur un contrôle de formulaire ou un contrôle Active X donnera deux résultats différents pour la même macro - ce qui ne devrait pas être le cas. Je trouve Active X plus fiable.

1
JLG

Il convient également de noter que les contrôles ActiveX ne fonctionnent que sous Windows, alors que les contrôles de formulaire fonctionnent avec les versions Excel et Windows de MacOS.

0
maciej