C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式

时间:2021-08-05 12:36:55

前言

作为项目管理大队中的一员,在公司里面接触最多的就是Excel文件了,所以一开始就想从Excel入手,学习简单的二次开发,开始自己的编程之路!

程序界面

C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式

功能说明

打开文件按钮,可以由使用者指定要操作的Excel文件,并在后面的textBox中显示出文件路径。

设置单元格按钮,可以根据程序设置Excel文件的内容。

退出程序按钮,关闭窗体。

程序源代码

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Reflection;
using Microsoft.Office.Interop.Excel;
namespace ExcelReadAndWrite
{
public partial class Form1 : Form
{
public String filename = string.Empty;
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 打开Excel文件,并且设置制定单元格的值
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
if (textBox_FileName.Text != "")
{
//这是读取Excel文件的一种方式
Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
Workbook wbook = app.Workbooks.Open(filename, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); Worksheet worksheet = (Worksheet)wbook.Worksheets[];
worksheet.Cells[, ] = "ID";
worksheet.Cells[, ] = "Value";
for (int i = ; i < ;i++ )
{
worksheet.Cells[i, ] = i.ToString();
worksheet.Cells[i, ] = i * i;
}
MessageBox.Show("已经设置成功!"); //保存并退出Excel文件
wbook.Save();
worksheet = null;
wbook = null;
app.Quit();
app = null;
}
else
{
MessageBox.Show("还未指定文件!");
}
}
/// <summary>
/// 关闭窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button_Quit_Click(object sender, EventArgs e)
{
this.Close();
}
/// <summary>
/// 获取指定文件的文件名
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button_OpenFile_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.InitialDirectory = "E:\\";
ofd.Filter="Excel文件|*.xlsx";
ofd.RestoreDirectory = true;
ofd.FilterIndex = ;
if (ofd.ShowDialog() == DialogResult.OK)
{
filename = ofd.FileName;
textBox_FileName.Text = filename;
}
}
}
}