永发信息网

c#调用Excel,如果要修改某一个单元格的值,其他的单元格也要重写吗?

答案:2  悬赏:0  手机版
解决时间 2021-01-31 20:14
  • 提问者网友:不要迷恋哥
  • 2021-01-30 23:41
c#调用Excel,如果要修改某一个单元格的值,其他的单元格也要重写吗?
最佳答案
  • 五星知识达人网友:过活
  • 2021-01-30 23:58
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using System.Data.OleDb;
using System.Reflection; // 引用这个才能使用Missing字段
using System.Collections.Specialized;
using System.Runtime.InteropServices;
using Excel = Microsoft.Office.Interop.Excel;
namespace ExcelDivision
{
///
/// 编辑类
/// 创建excel工作薄工作表以及写入数据
///

public class ExcelEdit
{
[DllImport("User32.dll", CharSet = CharSet.Auto)]
public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);
public Excel.Application app;
public Excel.Workbooks wbs;
public Excel.Workbook wb;

///
/// 构造函数,不创建Excel工作薄
///

public ExcelEdit()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
///
/// 创建Excel工作薄
///

public void Create()//创建一个Excel对象
{
try
{
app = new Excel.Application(); wbs = app.Workbooks;
wb = wbs.Add(true);
}
catch (Exception e)
{
MessageBox.Show(e.Message.ToString());
}
}
///
/// 显示Excel
///

public void ShowExcel()
{
app.Visible = true;
}
///
/// 获取一个工作表
///

///
///
public Excel.Worksheet GetSheet(string SheetName)
{
Excel.Worksheet s = (Excel.Worksheet)wb.Worksheets[SheetName];
GC.Collect();
return s;
}
///
/// 添加一个工作表
///

///
///
public Excel.Worksheet AddSheet(string SheetName)
{
Excel.Worksheet s = (Excel.Worksheet)wb.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
try
{
s.Name = SheetName;
GC.Collect();
return s;
}
catch
{
return null;
}
}
///
/// 删除一个工作表
///

///
public void DelSheet(string SheetName)
{
try
{
((Excel.Worksheet)wb.Worksheets[SheetName]).Delete();
GC.Collect();
}
catch (Exception e)
{
MessageBox.Show(e.Message.ToString());
}
}
///
/// 重命名一个工作表
///

///
///
///
public Excel.Worksheet ReNameSheet(string OldSheetName, string NewSheetName)
{
Excel.Worksheet s = (Excel.Worksheet)wb.Worksheets[OldSheetName];
try
{
s.Name = NewSheetName;
GC.Collect();
return s;
}
catch (Exception e)
{
MessageBox.Show(e.Message.ToString());
return null;
}
}
///
/// 将指定字符串写入指定单元格中
///

/// 要写入的数据
/// 工作表名称
/// 第几行
/// 第几列
public void WriteData(string data, string sheetName, int row, int column)
{
try
{
Excel.Worksheet worksheet = GetSheet(sheetName);
worksheet.Activate();

app.Cells[row, column] = data;

GC.Collect();
}
catch (Exception e)
{
MessageBox.Show(e.Message.ToString());
}

}
}
} 不知道这个对你有用没有
全部回答
  • 1楼网友:神也偏爱
  • 2021-01-31 01:12
不要
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯