I want to open 1 or more Excel-workbooks programmatically. And when I open the workbook, you get a question: The workbook contains links to other data sources.
try placing in the workbook Open event handler:
Application.AskToUpdateLinks = False
I don't think you can get around the dialogs with the excel interop libraries (the warnings are there for a reason). The way I've always done this in the past is to treat the Excel file like it's a database, and use the following:
OleDbConnection connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFileName + ";Extended Properties=\"Excel 12.0 Xml;HDR=YES\"");
Then you can use the following to get information about the sheets:
DataTable lookupSheets = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
Then use the debugger to understand what is behind the lookupSheets variable and start writing queries like you would with any other database.
Note: You cannot use the richer elements of the interop libraries like formatting