Невозможно использовать vba flex grid msflxgrd.ocx в ms-access
Я хочу использовать гибкую сетку в моей форме доступа. Я успешно скачал и зарегистрировал msflxgrd.ocx. Теперь он появляется в списке вставляемых элементов управления ActiveX в дизайне форм, так что все выглядит нормально. Но когда я выбираю элемент управления с именем "Microsoft FlexGrid Control, версия 6.0", я получаю следующую ошибку:
Microsoft Office Access не поддерживает этот элемент управления ActiveX
Что тут происходит? Я использую Access 2007 - нужен ли мне другой элемент управления и поддерживается ли он только Access 2003? Или что-то еще не так?
2 ответа
Компоненты OCX могут быть отключены, поскольку они могут быть вредоносными, если они используются в браузере. Чтобы этот компонент работал, вам нужно отредактировать реестр: HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\ Флаги совместимости изменить значение с 1024 на) для CLSID {6262D3A0-531B-11CF-91F6-C2863C385E30} или CLSID вашего компонента OCX.
У меня была та же проблема, или то, что я считаю такой же проблемой, с Access 97 и элементом управления TreeView (который на самом деле из VB 5.0).
Несмотря на то, что я нашел и попробовал Vbcmpfix.exe, и он утверждал, что добавил необходимые мне лицензии, он этого не сделал. Я также попытался зарегистрироваться и отменить регистрацию и замену ocx. Я попробовал это с 64-битным cmd.exe и 32-битным. Без изменений вообще.
Лицензии MS VB5/6, очевидно, все живут в HKCR\Licenses.
Я смог решить эту ошибку "Вам не нужна лицензия", экспортировав эту ветку из рабочей коробки XP и запустив этот.reg в W7 64.
Существует также коллекция записей реестра лицензий vb6, которая называется VB6Controls.reg. В нем были те же значения, что и у меня, и я попробовал его в другом окне, и это сразу же сработало.
Мне пришлось создать учетную запись, чтобы поделиться этим решением. Я нашел десятки веб-страниц с людьми, которые не могут решить эту проблему, так что, возможно, это кому-то поможет.