Это старая ветка, но я подумал, что завершу ее так, как я:
Случай 1: преобразование VB в C #
Если вам нужно конвертировать код в C #, используйте конвертер веб-кода Telerik:
http://converter.telerik.com/. Просто вставьте свой код VBA (убедитесь, что вы не используете специальные функции или переменные Excel, такие как Range, Worksheets и т. Д.) И конвертируйте. Вы должны быть в состоянии легко повторно использовать код в своем проекте C # .NET в Visual Studio.
Если вы хотите сделать библиотеку многократно используемой в Excel (сделайте ее видимой для COM) посмотрите этот пост здесь.
Случай 2: преобразование VBA в VB.NET
Если вам не нужно делать DLL видимой для COM, просто создайте проект VB.NET в Visual Studio, скомпилируйте и исправьте все найденные ошибки компиляции :).
В противном случае, если вы хотите, чтобы DLL была автоматизирована непосредственно из Excel - я недавно создал надстройку, которая делает именно это. Он создает видимую COM-библиотеку DLL прямо из вашей книги (просто выберите ваши функции VBA) и также вставляет необходимые процедуры загрузки в вашу книгу. Найдите это здесь.