如何使用openFileDialog打开excel文件

时间:2013-05-28 04:47:02

标签: c#

我很难搞清楚这一点。我想在按钮点击事件上打开一个filedialog窗口,用户将在该窗口中选择一个excel文件,该文件将在excel中打开。

我已经创建了filebox,我可以让excel打开一个新文件,但我无法弄清楚如何让两者进行网格化。

我想要使用的内容如下,

using Excel = Microsoft.Office.Interop.Excel;
using System.Reflection; 

private void button1_Click(object sender, EventArgs e)
{
   {
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
           System.IO.StreamReader sr = new
           System.IO.StreamReader(openFileDialog1.FileName);
           MessageBox.Show(sr.ReadToEnd());
           sr.Close();
        }
   }
}

我打算用它打开excel

Excel.Application excel = new Excel.Application();
Excel.Workbook wb = excel.Workbooks.Open(filename);

2 个答案:

答案 0 :(得分:4)

只需将文件名从打开的文件对话框传递到Excel应用程序。

using Excel = Microsoft.Office.Interop.Excel;
using System.Reflection; 

private void button1_Click(object sender, EventArgs e)
{
    {
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            Excel.Application excel = new Excel.Application();
            Excel.Workbook wb = excel.Workbooks.Open(openFileDialog1.FileName);

答案 1 :(得分:4)

您应该将excel和wb声明为表单的字段。像

这样的东西
partial class MyForm : Form
{
  private Excel.Application _excel;
  private Excel.Workbook _wb;
  // and so on
}

然后你应该替换

System.IO.StreamReader sr = new System.IO.StreamReader(openFileDialog1.FileName);
MessageBox.Show(sr.ReadToEnd());
sr.Close();

_excel = new Excel.Application();
_wb = _excel.Workbooks.Open(openFileDialog1.FileName);