我有3个项目包含一个Windows窗体应用程序(WFA)和两个excel工作簿在一个解决方案中。
我想通过点击相同解决方案中WFA中的不同按钮来调用/打开两个工作簿。 我被困在编码上.. 不知道如何编码打开,激活......等等。
任何人都有任何想法可以提供帮助吗?
* ps:我对vsto / c#.net
很新我试过这个.. 但是工作簿没有打开..
private void Button_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Open(@"C:\Document\PROJECT\abc.xlsx");
xlWorkSheet = (Microsoft.Office.Interop.Excel.xlWorkSheet)xlWorkBook.Worksheets.get_Item(1);
((Microsoft.Office.Interop.Excel._Worksheet)xlWorkBook).Activate();
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
}
答案 0 :(得分:1)
对您的代码进行简单的调整
Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlApp = new Microsoft.Office.Interop.Excel.Application();
xlApp.Visible = true;
xlWorkBook = xlApp.Workbooks.Open(@"C:\Users\knm\Documents\Book2.xlsx");
xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
xlWorkSheet.Activate();
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
答案 1 :(得分:0)
VB.net
Private Sub Button1_Click(sender As System.Object, e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) Handles Button1.Click
Dim Dirdata As String = "\\drive\folder\Template.xlsb"
Dim xlApp As Microsoft.Office.Interop.Excel.Application
Dim xlWorkbook As Microsoft.Office.Interop.Excel.Workbook
Dim xlWorksheet as Microsoft.Office.Interop.Excel.Worksheet
xlApp = New Microsoft.Office.Interop.Excel.Application()
xlWorkbook = xlApp.Workbooks.Open(Dirdata, , True, , "password")
xlApp.Visible = True
xlWorksheet = xlWorkbook.Worksheets(1)
xlWorksheet.Activate()
MsgBox(xlWorkbook.Name)
xlWorkbook.Close(False)
End Sub