安徒生童话故事绘本:如何用c#修改excel里面的内容

来源:百度文库 编辑:高校问答 时间:2024/04/18 21:24:29
如何用c#修改excel里面的内容,我尝试了用oledb把excel当成数据库连接,能读取数据,但用
cmd2.CommandText="UPDATE [Sheet1$] SET bb='sdfss' WHERE aa='s'";
说数据个是错误。
请问怎样修改excel里面的数据

直接使用ActiveX控制Office比较方便的
private Missing miss=Missing.Value; //忽略的参数OLENULL
public static Missing MissValue=Missing.Value;
private Excel.Application m_objExcel;//Excel应用程序实例
private Excel.Workbooks m_objBooks;//工作表集合
private Excel.Workbook m_objBook;//当前操作的工作表
private Excel.Worksheet sheet;//当前操作的表格

public void OpenExcelFile(string filename)
{
m_objExcel = new Excel.Application();
UserControl(false);

m_objExcel.Workbooks.Open(
filename,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss,
miss);

m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks;

m_objBook = m_objExcel.ActiveWorkbook;
sheet = (Excel.Worksheet)m_objBook.ActiveSheet;
}
public void CreateExceFile()
{
m_objExcel = new Excel.Application();
UserControl(false);
m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks;
m_objBook = (Excel.Workbook)(m_objBooks.Add(miss));
sheet = (Excel.Worksheet)m_objBook.ActiveSheet;
}
public void SaveAs(string FileName)
{
m_objBook.SaveAs(FileName, miss, miss, miss, miss,
miss, Excel.XlSaveAsAccessMode.xlNoChange,
Excel.XlSaveConflictResolution.xlLocalSessionChanges,
miss,miss, miss, miss);
//m_objBook.Close(false, miss, miss);
}
public void setValue(int x,int y,string text,System.Drawing.Font font,System.Drawing.Color color)
{
this.setValue(x,y,text);
Excel.Range range=sheet.get_Range(this.GetAix(x,y),miss);
range.Font.Size=font.Size;
range.Font.Bold=font.Bold;
range.Font.Color=color;
range.Font.Name=font.Name;
range.Font.Italic=font.Italic;
range.Font.Underline=font.Underline;
}
private string AList="ABCDEFGHIJKLMNOPQRSTUVWXYZ";

public string GetAix(int x,int y)
{
char [] AChars=AList.ToCharArray();
if(x>=26){return "";}
string s="";
s=s+AChars[x-1].ToString();
s=s+y.ToString();
return s;
}