用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"));