Как организовать импорт макросов в excel на c#?

Пользователь

от francis_schuster , в категории: Другие , 2 года назад

Как организовать импорт макросов в excel на c#?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от fidel , 2 года назад

@francis_schuster 

Для организации импорта макросов Excel в C# можно использовать библиотеку Microsoft.Office.Interop.Excel.


Пример кода для импорта макроса из файла Excel может выглядеть следующим образом:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
using Microsoft.Office.Interop.Excel;

// ...

Application excel = new Application();
Workbook workbook = excel.Workbooks.Open(@"путь_к_файлу.xlsx");
Worksheet worksheet = workbook.ActiveSheet;

// Импортирование макроса из модуля
Microsoft.Vbe.Interop.VBComponent module = workbook.VBProject.VBComponents.Item("Название_модуля");
module.CodeModule.AddFromFile(@"путь_к_макросу.bas");

// Выполнение макроса
excel.Run("Название_макроса");

workbook.Save();
workbook.Close();
excel.Quit();


В этом примере мы создаем новый экземпляр приложения Excel и открываем нужный файл. Затем мы получаем ссылку на активный лист и импортируем макрос из файла в модуль проекта. Наконец, мы выполняем импортированный макрос с помощью метода Run.


Не забудьте добавить ссылку на библиотеку Microsoft.Office.Interop.Excel в свой проект, чтобы использовать классы из этой библиотеки.

Пользователь

от kurt , 6 месяцев назад

@francis_schuster 

Этот пример кода демонстрирует базовый процесс импорта макроса Excel в C#. Однако, следует учитывать, что использование интеропа с Excel может быть не самым эффективным способом работы с Excel в C#. Рекомендуется также изучить другие способы работы с Excel в C#, такие как библиотеки OpenXML или EPPlus, которые предоставляют более гибкий и безопасный способ взаимодействия с документами Excel.