计算机一级:WORD_EXCEL内容替换计算机等级考试

文章作者 100test 发表时间 2009:05:15 18:21:29
来源 100Test.Com百考试题网


  2009年下半年全国计算机等级考试你准备好了没?考计算机等级考试的朋友,2009年下半年全国计算机等级考试时间是2009年9月19日至23日。更多优质资料尽在百考试题论坛 百考试题在线题库
  最近,在做一个小项目时,需要用到WORD/EXCEL(目前只针对OFFICE2003)文档中内容的替换,在网上搜寻了一番,找到了一些解决方法,自己再整理了一下,记录出来与大家共享。
  1、在项目的引用中添加WORD和EXCEL的COM引用:Microsoft.Word 11.0 Object Library和Microsoft.Excel 11.0 Object Library;
  2、在文件的USING部分加入以下命名空间:
  using Microsoft.Office.Core.
  using Microsoft.Office.Interop.Word.
  using Microsoft.Office.Interop.Excel.
  using System.IO.
  using System.Reflection.
  3、定义WORD和EXCEL内容替换函数:
  private void WordReplace(string filePath, string strOld, string strNew)
  {
  Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.ApplicationClass().
  object nullobj = System.Reflection.Missing.Value.
  object file = filePath.
  Microsoft.Office.Interop.Word.Document doc = app.Documents.Open(
  ref file, ref nullobj, ref nullobj,
  ref nullobj, ref nullobj, ref nullobj,
  ref nullobj, ref nullobj, ref nullobj,
  ref nullobj, ref nullobj, ref nullobj,
  ref nullobj, ref nullobj, ref nullobj, ref nullobj).
  doc.Content.Text = doc.Content.Text.Replace(strOld, strNew).
  doc.Content.AutoFormat().
  Microsoft.Office.Interop.Word.Range range = null.
  doc.Close(ref nullobj, ref nullobj, ref nullobj).
  app.Quit(ref nullobj, ref nullobj, ref nullobj).
  }
  private void ExcelReplace(string filePath, string strOld, string strNew)
  {
  Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.ApplicationClass().
  excel.Visible = false.
  string modelFile = filePath.  //文件名
  Workbook wb = excel.Workbooks._Open(modelFile, Missing.Value, Missing.Value, Missing.Value, Missing.Value
   , Missing.Value, Missing.Value, Missing.Value, Missing.Value
   , Missing.Value, Missing.Value, Missing.Value, Missing.Value).
  Worksheet xSheet = (Worksheet)wb.Sheets[1].
  int icount = wb.Sheets.Count.
  for (int i = 1. i <.= icount. i )
  {
  try
  {
  xSheet = (Worksheet)wb.Sheets[i].
  object what = strOld.  //查找字符串
  object retxt = strNew. //替换字符串
  xSheet.Cells.Replace(what, retxt, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value).
  }
  catch
  {
  }
  }
  wb.Save().
  NAR(xSheet).
  wb.Close(false, Missing.Value, Missing.Value).
  NAR(wb).
  excel.Quit().
  NAR(excel).
  System.GC.Collect().
  }
  private void NAR(object o)
  {
  try
  {
  System.Runtime.InteropServices.Marshal.ReleaseComObject(o).//强制释放一个对象
  }
  catch
  {
  }
  finally
  {
  o = null.
  }
  }
  4、代码中直接调用这两个函数即可。

  特别推荐:

  2009年9月全国计算机等级考试时间及科目预告

  2009年上半年全国计算机等级考试参考答案请进入计算机考试论坛

  2009年全国计算机等级考试报名信息汇总

  2009年NCRE考试有新变化

  2009年全国计算机等级考试-大纲

  2009年上半年全国计算机二级考试试题及答案

  2009年上半年全国计算机等级考试试题答案汇总



相关文章


创建部署和卸载SharePoint工作流解决方案包计算机等级考试
SharePoint如何隐藏列表的默认菜单计算机等级考试
计算机一级:WORD绝密COPY小技巧计算机等级考试
计算机一级:妙招让你单独打印Excel指定区域计算机等级考试
计算机一级:WORD_EXCEL内容替换计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛