免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

C#中怎么操作Word表格

C#中怎么操作Word表格,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

成都創新互聯為您提適合企業的網站設計?讓您的網站在搜索引擎具有高度排名,讓您的網站具備超強的網絡競爭力!結合企業自身,進行網站設計及把握,最后結合企業文化和具體宗旨等,才能創作出一份性化解決方案。從網站策劃到成都網站設計、成都網站建設, 我們的網頁設計師為您提供的解決方案。

using System;  using System.Collections;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Web;  using System.Web.SessionState;  using System.Web.UI;  using System.Web.UI.WebControls;  using System.Web.UI.HtmlControls;  using System.Configuration;  using System.IO;   using System.Reflection;  using System.Runtime.InteropServices ;  using System.Threading;   //C#操作Word表格public void MakeMyTable(DataTable DT,string strFilePath)    {          string strEnd   = this.txtEnd.Text.Trim().ToString();     string strStart = this.txtStart.Text.Trim().ToString();  //生成文檔分頁中的起始和終止頁     string strSign = "("+strStart + "-" + strEnd + ")";      //殺掉所有word進程以保證速度     //KillWordProcess();      object Nothing = System.Reflection.Missing.Value;      object missing = System.Reflection.Missing.Value;      object filename= strFilePath;        Word.Application wordApp=new Word.ApplicationClass();      Word.Document wordDoc=wordApp.Documents.Add(  ref Nothing,ref Nothing,ref Nothing,ref Nothing);    //C#操作Word表格   try    {      //生成過程中屏蔽返回按扭,不允許中途停止      Button2.Enabled = false;      #region 生成文檔      //設置文檔寬度      wordApp.Selection.PageSetup.LeftMargin  =   wordApp.CentimetersToPoints(float.Parse("2"));      wordApp.ActiveWindow.ActivePane.HorizontalPercentScrolled = 11 ;      wordApp.Selection.PageSetup.RightMargin =   wordApp.CentimetersToPoints(float.Parse("2"));       Object start = Type.Missing;      Object end = Type.Missing;      Object unit = Type.Missing;      Object count = Type.Missing;      wordDoc.Range(ref start, ref end).  Delete(ref unit, ref count);    //C#操作Word表格    object rng = Type.Missing;      string strInfo = this.txtNameCh.  Text.ToString()+"明細表"+strSign+"\r\n";      start = 0;      end = 0;      wordDoc.Range(ref start, ref end).  InsertBefore(strInfo);      wordDoc.Range(ref start, ref end).  Font.Name = "Verdana";       wordDoc.Range(ref start, ref end).  Font.Size = 20;      wordDoc.Range(ref start, ref end).  ParagraphFormat.Alignment = Word.WdParagraphAlignment.  wdAlignParagraphCenter;       start = 8;      end = strInfo.Length;      wordDoc.Range(ref start, ref end).  InsertParagraphAfter();//插入回車       if(DT.Rows.Count>0)      {  //C#操作Word表格之存在數據項  //添加一個表格  object missingValue = Type.Missing;   object location = strInfo.Length;   //注:若location超過已有字符的長度將會出錯。一定要比"明細表"串多一個字符  Word.Range rng2 = wordDoc.Range(ref location, ref location);   wordDoc.Tables.Add(rng2, 13, 6, ref missingValue, ref missingValue);   wordDoc.Tables.Item(1).Rows.HeightRule =   Word.WdRowHeightRule.wdRowHeightAtLeast;  wordDoc.Tables.Item(1).Rows.Height = wordApp.  CentimetersToPoints(float.Parse("0.8"));  wordDoc.Tables.Item(1).Range.Font.Size = 10;  wordDoc.Tables.Item(1).Range.Font.Name = "宋體";  wordDoc.Tables.Item(1).Range.ParagraphFormat.Alignment =   Word.WdParagraphAlignment.wdAlignParagraphCenter;  wordDoc.Tables.Item(1).Range.Cells.VerticalAlignment =   Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;  //C#操作Word表格之設置表格樣式  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderLeft).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderLeft).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderLeft).Color =   Word.WdColor.wdColorAutomatic;   wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderTop).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderTop).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderTop).Color =   Word.WdColor.wdColorAutomatic;   wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderBottom).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderBottom).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderBottom).Color =   Word.WdColor.wdColorAutomatic;   wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderHorizontal).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderHorizontal).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderHorizontal).Color =   Word.WdColor.wdColorAutomatic;   wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderVertical).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderVertical).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderVertical).Color =   Word.WdColor.wdColorAutomatic;   wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderRight).LineStyle =   Word.WdLineStyle.wdLineStyleSingle;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderRight).LineWidth =   Word.WdLineWidth.wdLineWidth050pt;  wordDoc.Tables.Item(1).Borders.  Item(Word.WdBorderType.wdBorderRight).Color =   Word.WdColor.wdColorAutomatic;   //C#操作Word表格//wordDoc.Tables.Item(k).Borders.  Item(Word.WdBorderType.wdBorderDiagonalDown).  LineStyle = Word.WdLineStyle.wdLineStyleSingle;  //wordDoc.Tables.Item(k).Borders.  Item(Word.WdBorderType.wdBorderDiagonalDown).  LineWidth = Word.WdLineWidth.wdLineWidth050pt;  //wordDoc.Tables.Item(k).Borders.  Item(Word.WdBorderType.wdBorderDiagonalDown).  Color = Word.WdColor.wdColorAutomatic;  //第一行顯示  wordDoc.Tables.Item(1).Cell(1,2).  Merge(wordDoc.Tables.Item(1).Cell(1,3));  wordDoc.Tables.Item(1).Cell(1,4).  Merge(wordDoc.Tables.Item(1).Cell(1,5));   //第二行顯示  wordDoc.Tables.Item(1).Cell(2,5).  Merge(wordDoc.Tables.Item(1).Cell(2,6));  wordDoc.Tables.Item(1).Cell(1,4).  Merge(wordDoc.Tables.Item(1).Cell(2,5));   #region 插入數據行  wordDoc.Tables.Item(1).Cell(1, 1).Range.Text = "cell11";   //wordDoc.Tables.Item(k).Cell(1, 2).Range.Text =   DT.Rows[i]["cell11"].ToString();   ////******************  wordDoc.Tables.Item(1).Cell(1, 3).Range.Text = "cell13";   //wordDoc.Tables.Item(k).Cell(1, 4).Range.Text =   DT.Rows[i]["cell13"].ToString();   ////******************  wordDoc.Tables.Item(1).Cell(2, 1).Range.Text = "cell21";   //wordDoc.Tables.Item(k).Cell(2, 2).Range.Text =   DT.Rows[i]["cell21"].ToString();   ////******************  wordDoc.Tables.Item(1).Cell(2, 3).Range.Text = "cell23";   //wordDoc.Tables.Item(k).Cell(2, 4).Range.Text =   DT.Rows[i]["cell23"].ToString();   #endregion   //C#操作Word表格#region 第三行顯示  wordDoc.Tables.Item(1).Cell(3,2).  Merge(wordDoc.Tables.Item(1).Cell(3,3));  wordDoc.Tables.Item(1).Cell(3,2).  Merge(wordDoc.Tables.Item(1).Cell(3,3));   ////******************  wordDoc.Tables.Item(1).Cell(3, 1).Range.Text = "cell31";    ////******************  wordDoc.Tables.Item(1).Cell(3, 3).Range.Text = "cell33";    #endregion   #region 第五行顯示  wordDoc.Tables.Item(1).Cell(5,2).  Merge(wordDoc.Tables.Item(1).Cell(5,3));  wordDoc.Tables.Item(1).Cell(5,2).  Merge(wordDoc.Tables.Item(1).Cell(5,3));  wordDoc.Tables.Item(1).Cell(5,2).  Merge(wordDoc.Tables.Item(1).Cell(5,3));  wordDoc.Tables.Item(1).Cell(5,2).  Merge(wordDoc.Tables.Item(1).Cell(5,3));  #endregion   #region  第四行顯示   ////******************  wordDoc.Tables.Item(1).Cell(4, 1).Range.Text = "cell41";   ////******************  wordDoc.Tables.Item(1).Cell(4, 3).Range.Text = "cell43";    ////******************  wordDoc.Tables.Item(1).Cell(4, 5).Range.Text = "cell45";    #endregion   //C#操作Word表格#region 第六行顯示  wordDoc.Tables.Item(1).Cell(6,2).  Merge(wordDoc.Tables.Item(1).Cell(6,3));  wordDoc.Tables.Item(1).Cell(6,2).  Merge(wordDoc.Tables.Item(1).Cell(6,3));  wordDoc.Tables.Item(1).Cell(6,2).  Merge(wordDoc.Tables.Item(1).Cell(6,3));  wordDoc.Tables.Item(1).Cell(6,2).  Merge(wordDoc.Tables.Item(1).Cell(6,3));    ////******************  wordDoc.Tables.Item(1).Cell(5, 1).  Range.Text = "cell51";   wordDoc.Tables.Item(1).Cell(5, 2).  Range.ParagraphFormat.Alignment =   Word.WdParagraphAlignment.wdAlignParagraphLeft;       ////******************  wordDoc.Tables.Item(1).Cell(6, 1).Range.Text = "cdll61";   wordDoc.Tables.Item(1).Cell(6, 2).  Range.ParagraphFormat.Alignment =   Word.WdParagraphAlignment.wdAlignParagraphLeft;  #endregion    #region 第七行顯示  wordDoc.Tables.Item(1).Cell(7,2).  Merge(wordDoc.Tables.Item(1).Cell(7,3));  wordDoc.Tables.Item(1).Cell(7,2).  Merge(wordDoc.Tables.Item(1).Cell(7,3));  wordDoc.Tables.Item(1).Cell(7,2).  Merge(wordDoc.Tables.Item(1).Cell(7,3));  wordDoc.Tables.Item(1).Cell(7,2).  Merge(wordDoc.Tables.Item(1).Cell(7,3));   ////******************  wordDoc.Tables.Item(1).Cell(7, 1).Range.Text = "cell71";   wordDoc.Tables.Item(1).Cell(7, 2).Range.  ParagraphFormat.Alignment = Word.WdParagraphAlignment.  wdAlignParagraphLeft;  #endregion    #region 第八行顯示  wordDoc.Tables.Item(1).Cell(8,1).  Merge(wordDoc.Tables.Item(1).Cell(8,2));  wordDoc.Tables.Item(1).Cell(8,2).  Merge(wordDoc.Tables.Item(1).Cell(8,3));  wordDoc.Tables.Item(1).Cell(8,2).  Merge(wordDoc.Tables.Item(1).Cell(8,3));  wordDoc.Tables.Item(1).Cell(8,2).  Merge(wordDoc.Tables.Item(1).Cell(8,3));    #endregion    #region 第九行顯示  wordDoc.Tables.Item(1).Cell(9,1).Merge(wordDoc.Tables.Item(1).Cell(9,2));  wordDoc.Tables.Item(1).Cell(9,3).Merge(wordDoc.Tables.Item(1).Cell(9,4));   ////******************  wordDoc.Tables.Item(1).Cell(9, 1).Range.Text = "cell91";  //wordDoc.Tables.Item(k).Cell(9, 2).Range.Text =    (DT.Rows[i]["cell91"].ToString()=="1"?"有":"無");      //C#操作Word表格  ////******************  wordDoc.Tables.Item(1).Cell(9, 3).Range.Text = "cell93";       #endregion    #region 第十行顯示  wordDoc.Tables.Item(1).Cell(10,1).Merge(wordDoc.Tables.Item(1).Cell(10,2));  wordDoc.Tables.Item(1).Cell(10,3).Merge(wordDoc.Tables.Item(1).Cell(10,4));  ////******************  wordDoc.Tables.Item(1).Cell(10, 1).Range.Text = "cell101";        ////******************  wordDoc.Tables.Item(1).Cell(10, 3).Range.Text = "cdll103";  //wordDoc.Tables.Item(k).Cell(10, 4).Range.Text =   (DT.Rows[i]["Label"].ToString()=="1"?"有":"無");  #endregion    #region 第十一行顯示  wordDoc.Tables.Item(1).Cell(11,1).  Merge(wordDoc.Tables.Item(1).Cell(11,2));  wordDoc.Tables.Item(1).Cell(11,3).  Merge(wordDoc.Tables.Item(1).Cell(11,4));  ////******************  wordDoc.Tables.Item(1).Cell(11, 1).Range.Text = "cell111";     ////******************  wordDoc.Tables.Item(1).Cell(11, 3).Range.Text = "cell113";       #endregion    #region 第十二行顯示  wordDoc.Tables.Item(1).Cell(12,1).  Merge(wordDoc.Tables.Item(1).Cell(12,2));  wordDoc.Tables.Item(1).Cell(12,3).  Merge(wordDoc.Tables.Item(1).Cell(12,4));  ////******************  wordDoc.Tables.Item(1).Cell(12, 1).Range.Text = "cell121";    ////******************  wordDoc.Tables.Item(1).Cell(12, 3).Range.Text = "cell123";   #endregion    #region 第十三行顯示  wordDoc.Tables.Item(1).Cell(13,1).  Merge(wordDoc.Tables.Item(1).Cell(13,2));  wordDoc.Tables.Item(1).Cell(13,3).  Merge(wordDoc.Tables.Item(1).Cell(13,4));   ////******************  wordDoc.Tables.Item(1).Cell(13, 1).Range.Text = "cell131";   //C#操作Word表格 ////******************  wordDoc.Tables.Item(1).Cell(13, 3).Range.Text = "cell133";      #endregion   wordDoc.Tables.Item(1).Select();  wordApp.Application.Selection.Cut();   //重新成聲所有表          for(int i = 0; i<=DT.Rows.Count-1;i++)  {   wordApp.Application.Selection.Paste();   int k = i+1;   #region    更新數據     #region 插入數據行      wordDoc.Tables.Item(k).Cell(1, 2).Range.Text =   DT.Rows[i]["1"].ToString();        ////******************      wordDoc.Tables.Item(k).Cell(1, 4).Range.Text =   DT.Rows[i]["2"].ToString();        ////******************       wordDoc.Tables.Item(k).Cell(2, 2).Range.Text =   DT.Rows[i]["3"].ToString();     ////******************      wordDoc.Tables.Item(k).Cell(2, 4).Range.Text =   DT.Rows[i]["4"].ToString();    #endregion   //C#操作Word表格  #region 第三行顯示   ////******************      wordDoc.Tables.Item(k).Cell(3, 2).Range.Text =   DT.Rows[i]["5"].ToString();   ////******************      wordDoc.Tables.Item(k).Cell(3, 4).Range.Text =   DT.Rows[i]["6"].ToString();    #endregion     #region 第五行顯示   ////******************      wordDoc.Tables.Item(k).Cell(5, 2).Range.Text = DT.Rows[i]["7"].ToString();   wordDoc.Tables.Item(k).Cell(5, 2).Range.ParagraphFormat  .Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;   #endregion    #region  第四行顯示    ////******************      wordDoc.Tables.Item(k).Cell(4, 2).Range.Text = DT.Rows[i]["8"].ToString();        ////******************      wordDoc.Tables.Item(k).Cell(4, 4).Range.Text = DT.Rows[i]["9"].ToString();        ////******************      wordDoc.Tables.Item(k).Cell(4, 6).Range.Text = DT.Rows[i]["0"].ToString();   #endregion     #region 第六行顯示   ////******************      wordDoc.Tables.Item(k).Cell(6, 2).Range.Text =   DT.Rows[i]["11"].ToString();   wordDoc.Tables.Item(k).Cell(6, 2).Range.ParagraphFormat  .Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;   #endregion    //C#操作Word表格 #region 第七行顯示   ////******************      wordDoc.Tables.Item(k).Cell(7, 2).Range.  Text = DT.Rows[i]["12"].ToString();   wordDoc.Tables.Item(k).Cell(7, 2).Range.  ParagraphFormat.Alignment = Word.WdParagraphAlignment.  wdAlignParagraphLeft;   #endregion     #region 第八行顯示   ////******************      string strTechlevel = DT.Rows[i]["Level"].ToString();   string returnTechlevel = "";   switch(strTechlevel)   {    case "1":     returnTechlevel = "Level1";     break;    case "2":     returnTechlevel = "Level2";     break;    case "3":     returnTechlevel = "Level3";     break;    case "0":     returnTechlevel = "Level4";     break;    default:     returnTechlevel = "Level5";     break;   }   wordDoc.Tables.Item(k).Cell(8, 2).  Range.Text = returnTechlevel;    #endregion     #region 第九行顯示   ////******************      wordDoc.Tables.Item(k).Cell(9, 2).Range.Text =    (DT.Rows[i]["14"].ToString()=="1"?"有":"無");    //C#操作Word表格     ////******************      wordDoc.Tables.Item(k).Cell(9, 4).Range.Text =   (DT.Rows[i]["15"].ToString()=="1"?"是":"否");   #endregion     #region 第十行顯示   ////******************      wordDoc.Tables.Item(k).Cell(10, 2).Range.Text =    (DT.Rows[i]["16"].ToString()=="1"?"有":"無");        ////******************      wordDoc.Tables.Item(k).Cell(10, 4).Range.Text =   (DT.Rows[i]["17"].ToString()=="1"?"有":"無");   #endregion     #region 第十一行顯示    ////******************      wordDoc.Tables.Item(k).Cell(11, 2).Range.Text =    (DT.Rows[i]["18"].ToString()=="1"?"是":"否");     ////******************      wordDoc.Tables.Item(k).Cell(11, 4).Range.Text =   (DT.Rows[i]["19"].ToString()=="1"?"是":"否");   #endregion     #region 第十二行顯示   ////******************      wordDoc.Tables.Item(k).Cell(12, 2).Range.Text =    (DT.Rows[i]["20"].ToString()=="1"?"是":"否");    ////******************      wordDoc.Tables.Item(k).Cell(12, 4).Range.Text =    (DT.Rows[i]["21"].ToString()=="1"?"是":"否");   #endregion     #region 第十三行顯示       wordDoc.Tables.Item(k).Cell(13, 2).Range.Text =    (DT.Rows[i]["22"].ToString()=="1"?"是":"否");    ////******************      wordDoc.Tables.Item(k).Cell(13, 4).Range.Text =    (DT.Rows[i]["23"].ToString()=="1"?"是":"否");   #endregion    #endregion    //插入分頁   if(i!=DT.Rows.Count-1)   {    object mymissing = System.Reflection.Missing.Value;    object myunit = Word.WdUnits.wdStory;    wordApp.Selection.EndKey(ref myunit,ref mymissing);     object pBreak= (int)Word.WdBreakType.wdPageBreak;    wordApp.Selection.InsertBreak( ref pBreak );   }  }         wordDoc.SaveAs(ref filename,   ref missing,ref missing, ref missing,  ref missing,ref missing,ref missing,  ref missing,ref missing,ref missing, ref missing);            //C#操作Word表格wordDoc.Close(ref Nothing, ref Nothing, ref Nothing);   wordApp.Quit(ref Nothing, ref Nothing, ref Nothing);    if ( wordDoc != null )  {   System.Runtime.InteropServices.Marshal.  ReleaseComObject(wordDoc);   wordDoc = null;  }  if ( wordApp != null )  {   System.Runtime.InteropServices.Marshal.  ReleaseComObject(wordApp);   wordApp = null;  }  GC.Collect();  //KillWordProcess();  string strUrl = "MakeWordFile.aspx?username=" +Request.QueryString["username"].ToString();  utility.ShowPopMessage("文檔生成完畢!",strUrl);      }      else     {  utility.ShowPopMessage("無任何數據!");      }      #endregion            }     catch    {      wordDoc.Close(ref Nothing, ref Nothing, ref Nothing);       wordApp.Quit(ref Nothing, ref Nothing, ref Nothing);       if ( wordDoc != null )      {  System.Runtime.InteropServices.Marshal.  ReleaseComObject(wordDoc);  wordDoc = null;      }      if ( wordApp != null )      {  System.Runtime.InteropServices.Marshal.  ReleaseComObject(wordApp);  wordApp = null;      }      GC.Collect();      utility.ShowPopMessage("文檔生成失敗!");      }    }

看完上述內容,你們掌握C#中怎么操作Word表格的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!

分享名稱:C#中怎么操作Word表格
當前路徑:http://m.newbst.com/article44/ppisee.html

成都網站建設公司_創新互聯,為您提供虛擬主機關鍵詞優化用戶體驗網站維護軟件開發微信小程序

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站建設