在Excel2007中,如何使用C#访问工作簿连接的“命令文本”属性



属性位于"数据"选项卡>"连接">"属性">"定义"选项卡上

我正在处理的系统中的电子表格每天都会使用工作簿连接进行刷新,工作簿连接从命令文本执行存储过程。我希望能够从这些现有的电子表格中获取此属性,并创建当前使用的所有存储过程的列表。

我找了很多,但什么也没找到。我研究过的API可能是DocumentFormat.OpenXml.Spreadsheet和Microsoft.Office.Interop.Excel.

基本伪码:-打开电子表格-对于每个工作簿连接-添加命令文本属性以列出

我想您可能正在查找工作簿连接。非常粗略:

Workbook workBook = _excelApp.Workbooks.Open(thisFileName);
for (int itm = 1; itm < workBook.Connections.Count + 1; itm++) {
    Console.WriteLine(workBook.Connections[itm].Type + "n" +
        workBook.Connections[itm].OLEDBConnection.CommandText + "n" +
        workBook.Connections[itm].OLEDBConnection.CommandType + "n" +
        workBook.Connections[itm].OLEDBConnection.Connection + "n" +
        workBook.Connections[itm].OLEDBConnection.SourceDataFile);
    Console.Read();
}

最新更新