0
我已經鏈接了一個從API獲取數據的應用程序,當我將一個新合同加載到程序時打開工作表。現在,我正在試圖在收集新數據時在程序的後期將新數據寫入Excel表。使用互操作查找並編輯打開的Excel工作表
我知道如何將數據寫入Excel工作表以及如何打開我想要寫入的工作表。問題是我不知道如何寫入表單,一旦它已經打開,我所能做的就是打開表單的另一個實例。
我需要能夠打開一個無效的工作表,然後更新現在打開的工作表在以後的空白。如何檢查表單是否打開,以及是否再次訪問它以向其寫入更多數據?
這裏是我已經打開的Excel,
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
Console.WriteLine("Opening Excel...");
if (xlApp == null)
{
Console.WriteLine("EXCEL could not be started. Check that your office installation and project references are correct.");
return;
}
xlApp.Visible = true;
Workbook wb = xlApp.Workbooks.Open(@"C:\Users\Craig Key\Desktop\AppExports\TestExport.xlsx");
Console.WriteLine("Opening Currently Linked Workbook...");
Worksheet ws = (Worksheet)wb.ActiveSheet;
Console.WriteLine("Opening Active Worksheet...");
if (ws == null)
{
Console.WriteLine("Worksheet could not be created. Check that your office installation and project references are correct.");
}
現在以後我需要稍後在程序中找到xlApp
寫一遍,而無需打開該文件的另一個實例。
相關? http://stackoverflow.com/questions/6682678/accessing-an-open-excel-workbook-in-c-sharp – grek40
爲什麼不把你的'xlApp'作爲參數傳遞給這兩種方法(我假設你的意思是無效的方法沒有返回值) – pquest