Usando o Microsoft Excel 2010, percebi dois tipos de controles que podem ser inseridos em um documento: controles de formulário e controles ActiveX .
Qual a diferença entre eles?
Usando o Microsoft Excel 2010, percebi dois tipos de controles que podem ser inseridos em um documento: controles de formulário e controles ActiveX .
Qual a diferença entre eles?
Respostas:
O Google está cheio de informações sobre isso . Como disse Hans Passant, os controles de formulário são integrados ao Excel, enquanto os controles ActiveX são carregados separadamente.
Geralmente você usará Forms
controles, eles são mais simples. ActiveX
os controles permitem um design mais flexível e devem ser usados quando o trabalho simplesmente não pode ser feito com um Forms
controle básico .
Por padrão, os computadores de muitos usuários não confiarãoActiveX
e será desativado; isso às vezes precisa ser adicionado manualmente à central de confiança. ActiveX
é uma tecnologia baseada em microsoft e, tanto quanto eu sei, não é compatível com o Mac. Isso é algo que você também terá que considerar, caso você (ou alguém para quem você forneça uma pasta de trabalho) decida usá-lo em um Mac.
Uma diferença importante que é importante saber é que os controles ActiveX aparecem como objetos que você pode usar em seu código - tente inserir um controle ActiveX em uma planilha, abra o editor VBA (ALT + F11) e você será capaz de acessar o controle programaticamente. Você não pode fazer isso com controles de formulário (em vez disso, as macros devem ser atribuídas explicitamente a cada controle), mas os controles de formulário são um pouco mais fáceis de usar. Se você está apenas fazendo algo simples, não importa qual você usa, mas para scripts mais avançados, o ActiveX tem melhores possibilidades.
ActiveX também é mais personalizável.
Tenha cuidado, em alguns casos, clicar em um Form Control ou Active X Control fornecerá dois resultados diferentes para a mesma macro - o que não deveria ser o caso. Acho o Active X mais confiável.