вам нужно использовать COM объект называемый "Excel.Application"
Там уже открываете файл, выполняете макрос, читаете/пишите значения ячеек.
Либо в C#
using Excel = Microsoft.Office.Interop.Excel;
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open("E:\\book1.xlsm");
//тут манипуляции с xlWorkBook и ячейками
xlApp.Run("ShowMsg", "Hello from C# Client", "Demo to run Excel macros from C#");
//тут манипуляции с xlWorkBook и ячейками
xlWorkBook.Close(false);
xlApp.Quit();
В любом случае код примерно одинаковый так как по сути использует одну и ту же библиотеку MSOffice: данные и их пересчет в контексте книги, макросы в контексте приложения.