C# 如何使用openFileDialog打开excel文件
我很难弄明白这一点。我想在按钮点击事件中打开一个C# 如何使用openFileDialog打开excel文件,c#,C#,我很难弄明白这一点。我想在按钮点击事件中打开一个filedialog窗口,用户将在其中选择一个excel文件,该文件将在excel中打开 我已经创建了文件盒,我可以用excel打开一个新文件,但我不知道如何将两者结合起来 我想用的是 using Excel = Microsoft.Office.Interop.Excel; using System.Reflection; private void button1_Click(object sender, EventArgs e) {
filedialog
窗口,用户将在其中选择一个excel文件,该文件将在excel中打开
我已经创建了文件盒
,我可以用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);
只需将文件名从“打开文件”对话框传递到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);
您应该将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
和wb
对象不在范围内吗?是的。如果在事件处理程序中声明它们,则它们在离开处理程序后即超出范围。i get“非静态字段、方法或属性'Microsoft.Office.Interop.Excel.Workbooks.Open'需要对象引用(字符串、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象、对象)“我的答案的最后一段代码中有两个严重的打字错误。可能是这导致了错误。现在没有错误。但是在选择文件时什么都没有发生。当我运行此代码时,表单冻结5-10秒,然后什么都没有。
_excel = new Excel.Application();
_wb = _excel.Workbooks.Open(openFileDialog1.FileName);