这是非常确切的问题:OleDbConnection() opens an Excel file in any open Excel window. But does not if there isnt a window open,但它没有答案 .

如果我打开了多个Excel窗口,我的程序将在任何Excel窗口中打开一个只读工作表 . 即如果我打开Test.xlsx,另一个窗口中有一张空白表(假设我的程序要写入Test.xlsx);当我做:

OleDbConnection myConn = new OleDbConnection(conn);

myConn.Open();

Test.xlsx的只读副本将在空白窗口中打开,程序将对其进行操作 . 有没有办法确保 myConn 使用已经打开的Test.xlsx?

如果有帮助,我的 conn 变量是:

“Provider = Microsoft.Jet.OLEDB.4.0;数据源= C:\ temp \ Test.xlsx;扩展属性=”Excel 8.0; HDR =否“”