用c#加载excel表单

首先,我对我的文章中的错误表示歉意,英语不是我的母语,我尽我所能。 我是一个非常初学的编程人员,我对加载Excel表格有一些疑问。

我正在尝试在C#中使用VB做一个项目,我必须加载一个已经存在的Excel表格,并在其中写入。 我发现了一些解释,帮助我创build一个新工作表并写入:

private void button1_Click(object sender, System.EventArgs e) { Excel.Application oXL; Excel._Workbook oWB; Excel._Worksheet oSheet; Excel.Range oRng; try { oXL = new Excel.Application("Exemple.xlsx"); oXL.Visible = true; oWB = (Excel._Workbook)(oXL.Workbooks.Add(Missing.Value)); oSheet = (Excel._Worksheet)oWB.ActiveSheet; oSheet.Cells[1, 1] = "First Name"; oSheet.Cells[1, 2] = "Last Name"; oSheet.Cells[1, 3] = "Full Name"; oSheet.get_Range("A1", "C1").Font.Bold = true; oSheet.get_Range("A1", "C1").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter; string[,] saNames = new string[5, 2]; saNames[0, 0] = "John"; saNames[0, 1] = "Smith"; saNames[1, 0] = "Tom"; saNames[1, 1] = "Brown"; saNames[2, 0] = "Sue"; saNames[2, 1] = "Thomas"; saNames[3, 0] = "Jane"; saNames[3, 1] = "Jones"; saNames[4, 0] = "Adam"; saNames[4, 1] = "Johnson"; oSheet.get_Range("A2", "B6").Value2 = saNames; oRng = oSheet.get_Range("C2", "C6"); oRng.Formula = "=A2 & \" \" & B2"; oXL.Visible = true; oXL.UserControl = true; } catch (Exception theException) { String errorMessage; errorMessage = "Error: "; errorMessage = String.Concat(errorMessage, theException.Message); errorMessage = String.Concat(errorMessage, " Line: "); errorMessage = String.Concat(errorMessage, theException.Source); MessageBox.Show(errorMessage, "Error"); } } 

我写的东西并不重要,但我无法加载我自己的工作表。 我通过replace

 oXL = new Excel.Application(); 

通过

 oXL = new Excel.Application("Exemple.xlsx"); 

我可以加载我的工作表(调用Exemple.xlsx)

不幸的是它不工作,你能告诉我什么是错的吗?

谢谢!

一旦你有了Excel的引用,你必须调用Workbooks.Open方法来打开一个现有的文件:

  oXL = new Excel.Application(); oWB = (Excel._Workbook)(oXL.Workbooks.Open("Example.xlsx"));