ШАГ 1: создание Excel 2010 надстройкиActiveX компонент не может создать объект VBA ошибку времени выполнения
Я создал новый проект, Excel 2010 надстройки, .Net 4 рамки
я добавил класс файла, чтобы «Name.cs», интерфейс «iName.cs» и добавил функцию к нему
[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
public interface iName
{
string getName();
}
[ClassInterface(ClassInterfaceType.None)]
public class Name
{
public string getName()
{
return "Hello";
}
}
ШАГ 2: Настройка построения событий
Я настроил сборки событий про
"%Windir%\Microsoft.NET\Framework\v4.0.30319\regasm" /codebase /tlb
"$(MSBuildProjectDirectory)\$(OutputPath)$(AssemblyName).dll"
Это зарегистрирует Dll так, что он будет доступен в references
столбца в Excel
ШАГ 3: Добавление ссылки в Excel макрос
Я создал модуль, в инструменте-> справке я добавил добавление NameProvider
(название этой сборки/проекта), которое доступно после создания проекта надстройки Excel
Я попытался создать объект для этой добавленной ссылки
Public Sub test()
Dim nameObj as NameProvider.Name
Dim name as string
Set nameObj = new NameProvider.Name 'error 429 occurs here
name = nameObj.getName() 'getName function automatically comes after .
End Sub
Вы используете Office, 64bit ? – dePatinkin
Да его 64-битный @dePatinkin –