从模板.xlt文件打开为.xltx或xlsx

时间:2013-06-26 08:29:38

标签: c# excel

我有.xlt excel文件模板,并尝试在.xltx或xlsx excel文件中显示数据。

ExcelApp = new Microsoft.Office.Interop.Excel.Application();

我尝试用xlt扩展名打开文件xltx

ExcelWorkBook = ExcelApp.Workbooks.Open(fileName,…)

当我打开文件名为fileName时,我收到错误

  

HRESULT 0x800A03EC的异常

在这一行

Range r = (Range) ExcelWorkBook.Columns["I", 0];

1 个答案:

答案 0 :(得分:0)

  

此问题可能由CultureInfo引起。   或者可能有一些旧格式无效类型库


想要解决此错误,您可以在执行与Excel相关的代码时将CurrentCulture设置为en-US,并使用这两个函数重置回原点。

//declare a variable to hold the CurrentCulture
System.Globalization.CultureInfo oldCI;

//get the old CurrenCulture and set the new, en-US
void SetNewCurrentCulture()
{
  oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
  System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
}

//reset Current Culture back to the originale
void ResetCurrentCulture()
{
  System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
}