jth*_*h41 4 c# excel visual-studio-2010 excel-interop
对于当前代码:
String currentPath = Directory.GetCurrentDirectory();
OpenFileDialog op = new OpenFileDialog();
op.InitialDirectory = currentPath;
if (op.ShowDialog() == DialogResult.OK)
currentPath = op.FileName;
else
{
toolStripStatusLabel1.Text = "Failed to Load Workbook";
toolStripStatusLabel1.Visible = true;
}
Workbook wb = new Workbook(excel.Workbooks.Open(currentPath));
Run Code Online (Sandbox Code Playgroud)
我收到错误:
System.Runtime.InteropServices.COMException未处理Message =检索具有CLSID {00020819-0000-0000-C000-000000000046}的组件的COM类工厂因以下错误而失败:80040154类未注册(HRESULT异常:0x80040154(REGDB_E_CLASSNOTREG) )).Source = mscorlib ErrorCode = -2147221164
我想要的只是一个预定义的工作簿来添加工作表
Fra*_*lli 12
我想在你的代码中,Workbook的全名是Microsoft.Office.Interop.Excel.Workbook,而excel是Microsoft.Office.Interop.Excel.Application的一个实例.
如果是这种情况,您的代码将无法工作,因为Workbook是一个接口,而接口没有构造函数.您必须要求excel应用程序为您创建工作簿,在您的情况下,您必须简单地写:
Workbook wb = excel.Workbooks.Open(currentPath);
Run Code Online (Sandbox Code Playgroud)
以类似的方式,如果要创建一个新的空工作簿,您应该写:
Workbook wb = excel.Workbooks.Add(System.Reflection.Missing.Value);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13140 次 |
| 最近记录: |