c# 操作word完全攻略(搜集转载)

前提:
导入COM库:Microsoft word 11.0 Object Library.

创建新Word
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add( ref  oMissing,  ref  oMissing,

                ref oMissing, ref oMissing);


打开文档:
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            
object  fileName  =   @" E:\CCCXCXX\TestDoc.doc " ;
            oDoc 
=  oWord.Documents.Open( ref  fileName,
            
ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing,
            
ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing,
            
ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing,  ref  oMissing);

导入模板
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            
object  fileName  =   @" E:\XXXCCX\Test.doc " ;
            oDoc 
=  oWord.Documents.Add( ref  fileName,  ref  oMissing,
                            
ref  oMissing,  ref  oMissing);


.添加新表
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add( ref  oMissing,  ref  oMissing,
                
ref  oMissing,  ref  oMissing);

            
object  start  =   0 ;
            
object  end  =   0 ;
            Word.Range tableLocation 
=  oDoc.Range( ref  start,  ref  end);
            oDoc.Tables.Add(tableLocation, 
3 4 ref  oMissing,  ref  oMissing);

.表插入行
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add( ref  oMissing,  ref  oMissing,
                
ref  oMissing,  ref  oMissing);

            
object  start  =   0 ;
            
object  end  =   0 ;
            Word.Range tableLocation 
=  oDoc.Range( ref  start,  ref  end);
            oDoc.Tables.Add(tableLocation, 
3 4 ref  oMissing,  ref  oMissing);

            Word.Table newTable 
=  oDoc.Tables[ 1 ];
            
object  beforeRow  =  newTable.Rows[ 1 ];
            newTable.Rows.Add(
ref  beforeRow);

.单元格合并
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add( ref  oMissing,  ref  oMissing,
                
ref  oMissing,  ref  oMissing);

            
object  start  =   0 ;
            
object  end  =   0 ;
            Word.Range tableLocation 
=  oDoc.Range( ref  start,  ref  end);
            oDoc.Tables.Add(tableLocation, 
3 4 ref  oMissing,  ref  oMissing);

            Word.Table newTable 
=  oDoc.Tables[ 1 ];
            
object  beforeRow  =  newTable.Rows[ 1 ];
            newTable.Rows.Add(
ref  beforeRow);

            Word.Cell cell 
=  newTable.Cell( 1 1 );
            cell.Merge(newTable.Cell(
1 2 ));

.单元格分离
             object  oMissing  =  System.Reflection.Missing.Value;
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add(ref  oMissing,  ref  oMissing,
                
ref  oMissing,  ref  oMissing);

            
object  start  =   0 ;
            
object  end  =   0 ;
            Word.Range tableLocation 
=  oDoc.Range( ref  start,  ref  end);
            oDoc.Tables.Add(tableLocation, 
3 4 ref  oMissing,  ref  oMissing);

            Word.Table newTable 
=  oDoc.Tables[ 1 ];
            
object  beforeRow  =  newTable.Rows[ 1 ];
            newTable.Rows.Add(
ref  beforeRow);

            Word.Cell cell 
=  newTable.Cell( 1 1 );
            cell.Merge(newTable.Cell(
1 2 ));

            
object  Rownum  =   2 ;
            
object  Columnnum  =   2 ;
            cell.Split(
ref  Rownum,  ref   Columnnum);

word文档内容替换

ContractedBlock.gifExpandedBlockStart.gifCode
 public bool Replace(string strOldText,string strNewText)
        {
            
this.oDoc.Content.Find.Text = strOldText ;
            
object FindText,  ReplaceWith, Replace ;// 
            object MissingValue = Type.Missing; 
            FindText 
= strOldText ;//要查找的文本
            ReplaceWith = strNewText ;//替换文本
               Replace = Word.WdReplace.wdReplaceAll ;/*wdReplaceAll - 替换找到的所有项。
                                                      * wdReplaceNone - 不替换找到的任何项。
                                                    * wdReplaceOne - 替换找到的第一项。
                                                    * 
*/
            
this.oDoc.Content.Find.ClearFormatting();//移除Find的搜索文本和段落格式设置
            if (this.oDoc.Content.Find.Execute(
                
ref FindText,ref MissingValue,
                
ref MissingValue,ref MissingValue,
                
ref MissingValue,ref MissingValue,
                
ref MissingValue,ref MissingValue,ref MissingValue,
                
ref ReplaceWith,ref Replace,
                
ref MissingValue,ref MissingValue,
                
ref MissingValue,ref MissingValue))
            {
                
return true ;
            }
            
return false ;
            

 

通过段落控制插入

             object  oMissing  =  System.Reflection.Missing.Value;
            
object  oEndOfDoc  =   " \\endofdoc " /* \endofdoc is a predefined bookmark */

            
// Start Word and create a new document.
            Word._Application oWord;
            Word._Document oDoc;
            oWord 
=   new  Word.Application();
            oWord.Visible 
=   true ;
            oDoc 
=  oWord.Documents.Add( ref  oMissing,  ref  oMissing,
                
ref  oMissing,  ref  oMissing);

            
// Insert a paragraph at the beginning of the document.
            Word.Paragraph oPara1;
            oPara1 
=  oDoc.Content.Paragraphs.Add( ref  oMissing);
            oPara1.Range.Text 
=   " Heading 1 " ;
            oPara1.Range.Font.Bold 
=   1 ;
            oPara1.Format.SpaceAfter 
=   24 ;     // 24 pt spacing after paragraph.

            oPara1.Range.InsertParagraphAfter();


 

转载于:https://www.cnblogs.com/tzy080112/archive/2009/05/15/1457302.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值