Используя Microsoft Excel 2010, я заметил два типа элементов управления, которые можно вставить в документ: элементы управления формы и элементы управления ActiveX .
В чем разница между ними?
Используя Microsoft Excel 2010, я заметил два типа элементов управления, которые можно вставить в документ: элементы управления формы и элементы управления ActiveX .
В чем разница между ними?
Ответы:
Google полон информации по этому поводу . Как сказал Ханс Пассант, элементы управления формы встроены в Excel, тогда как элементы управления ActiveX загружаются отдельно.
Обычно вы будете использовать Forms
элементы управления, они проще. ActiveX
элементы управления обеспечивают более гибкий дизайн и должны использоваться, когда работа просто не может быть выполнена с помощью базового элемента Forms
управления.
Многие компьютеры пользователей по умолчанию не доверяют ActiveX
, и он будет отключен; иногда это необходимо вручную добавить в центр доверия. ActiveX
- это технология на базе Microsoft, и, насколько мне известно, она не поддерживается на Mac. Это то, что вам также нужно учитывать, если вы (или любой, кому вы предоставляете книгу) решите использовать ее на Mac.
Одно из основных различий, о котором важно знать, заключается в том, что элементы управления ActiveX отображаются как объекты, которые вы можете использовать в своем коде. Попробуйте вставить элемент управления ActiveX на рабочий лист, откройте редактор VBA (ALT + F11), и вы сможете получить доступ управление программно. Вы не можете сделать это с помощью элементов управления формы (вместо этого макросы должны быть явно назначены каждому элементу управления), но элементы управления формы немного проще в использовании. Если вы просто делаете что-то простое, неважно, что вы используете, но для более сложных сценариев ActiveX имеет лучшие возможности.
ActiveX также более настраиваемый.
Будьте осторожны, в некоторых случаях нажатие на элемент управления формы или элемент управления Active X даст два разных результата для одного и того же макроса, чего не должно быть. Я считаю Active X более надежным.