精华内容
下载资源
问答
  • c#操作office

    2011-09-19 11:13:43
    c#操作office
  • c# 操作office

    2014-04-17 16:45:31
    c# 操作 word excel ppt pdf 不是很深,但很全,希望对大家有所帮助
  • c#操作Office

    2012-12-17 08:04:06
    一种方式: Office PIA 不利点:需要客户安装Office 第二种方式: Office Open XMl 无需安装Office

    一种方式:

    Office PIA

    不利点:需要客户安装Office

    第二种方式:

    Office Open XMl

    无需安装Office

    展开全文
  • C#操作office总结

    2010-12-15 11:12:27
    C#操作office的总结(Excel、Exchange 和 C#,EXCEL中合并单元格,Kill Excel Process,Visual C#的Excel编程,如何用C#在Excel中生成图表,使用C#进行Word 2002和Excel 2002编程,用C#快速往Excel写数据,在C#中...
  • c#操作office文件的示例程序 基本上可以拿来直接使用,简单修改一下就可以了。
  • c# 操作Office文件大全各种代码 操作Word文档; 操作PDF文档 ; 操作PowerPoint文档; 操作Excel工作簿;
  • 这是C#操作Office组件的需要调用的类库,在你引用Office组件时候必须用到。
  • C#操作office 讲解如何创建文件 和添加各种数据 会有用到的时候
  • C#操作office(超经典)(已添加书签)
  • C# 操作Office和WPS

    千次阅读 2013-12-30 15:48:12
    C# 操作Office和WPS  调用Word对象的方法或者属性时候,必须保证word文档是打开的状态。
    C# 操作Office和WPS 
    
    调用Word对象的方法或者属性时候,必须保证word文档是打开的状态。
    展开全文
  • C#操作office word的APIs

    2013-07-20 10:31:59
    C#实现的操作office word的apis,多数功能已实现,只需简单调用即可。主要有增加段落、换行、文字的上表显示、表格表头分页保留、科学数字表示等等。 分享你我,方便大家
  • C#操作Office详细步骤

    1,新建C#控制台应用程序(Excel创建图表)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;


    //解决方案中 添加引用 Execl(COM组件)


    using MSExcel = Microsoft.Office.Interop.Excel;
    using System.IO;
    using System.Reflection;


    namespace ExeclCharts
    {
        class Program
        {
            static void Main(string[] args)
            {
                object path; //文件路径变量
                MSExcel.Workbook excelDoc; //Excel文档变量
                MSExcel.Application excelApp; //Excel应用程序变量 MSExcel.Workbook excelDoc; //Excel文档变量
                path = @"C:\ExcelData\MyExcel.xlsx"; //路径
                excelApp = new MSExcel.Application(); //初始化 
                //vs2010不能用ApplicationClass(),而用Application();
                //如果已存在,则删除
                if (File.Exists((string)path))
                {
                    File.Delete((string)path);
                }
                //由于使用的是COM库,因此有许多变量需要用Nothing代替 Object Nothing = Missing.Value;
                Object Nothing = Missing.Value;
                excelDoc = excelApp.Workbooks.Add(Nothing);
                //使用第一个工作表作为插入数据的工作表
                MSExcel.Worksheet ws = (MSExcel.Worksheet)excelDoc.Sheets[1]; //声明一个MSExcel.Range 类型的变量r
                MSExcel.Range r;
                //获得A1处的表格,并赋值
                r = ws.get_Range("A1", "A1");
                r.Value2 = "3";
                //获得A2处的表格,并赋值
                r = ws.get_Range("A2", "A2");
                r.Value2 = "5.7";
                //获得A3处的表格,并赋值
                r = ws.get_Range("A3", "A3");
                r.Value2 = "4.8";
                //获得A4处的表格,并赋值
                r = ws.get_Range("A4", "A4");
                r.Value2 = "9.2";


                //获得A1处的表格,并赋值
                r = ws.get_Range("B1", "B1");
                r.Value2 = "3";
                //获得A2处的表格,并赋值
                r = ws.get_Range("B2", "B2");
                r.Value2 = "5.7";
                //获得A3处的表格,并赋值
                r = ws.get_Range("B3", "B3");
                r.Value2 = "4.8";
                //获得A4处的表格,并赋值
                r = ws.get_Range("B4", "B4");
                r.Value2 = "9.2";


                //获得A1处的表格,并赋值
                r = ws.get_Range("C1", "C1");
                r.Value2 = "3";
                //获得A2处的表格,并赋值
                r = ws.get_Range("C2", "C2");
                r.Value2 = "5.7";
                //获得A3处的表格,并赋值
                r = ws.get_Range("C3", "C3");
                r.Value2 = "4.8";
                //获得A4处的表格,并赋值
                r = ws.get_Range("C4", "C4");
                r.Value2 = "9.2";


                excelDoc.Charts.Add(Nothing, Nothing, Nothing, Nothing);
                excelDoc.ActiveChart.ChartType = MSExcel.XlChartType.xlBubble;//xlBubble 指散点图   三维气泡图(xlBubble3DEffect)
                excelDoc.ActiveChart.SetSourceData(ws.get_Range("A1", "C4"), MSExcel.XlRowCol.xlColumns);
                excelDoc.ActiveChart.Location(MSExcel.XlChartLocation.xlLocationAsObject, "sheet1");
                excelDoc.ActiveChart.HasTitle = true;
                excelDoc.ActiveChart.ChartTitle.Text = "创建 - 散点图表";
                excelDoc.ActiveChart.HasDataTable = false;
                //WdSaveFormat为Excel文档的保存格式
                object format = MSExcel.XlFileFormat.xlWorkbookDefault;
                //将excelDoc文档对象的内容保存为XLSX文档
                excelDoc.SaveAs(path, format, Nothing, Nothing, Nothing, Nothing, MSExcel.XlSaveAsAccessMode.xlExclusive, Nothing, Nothing, Nothing, Nothing, Nothing);
                //关闭excelDoc文档对象
                excelDoc.Close(Nothing, Nothing, Nothing); //关闭excelApp组件对象
                excelApp.Quit();
                Console.WriteLine(path + " 创建完毕!");
            }
        }
    }



    2,新建空网站,添加一个页面,在页面中添加一个Button,添加事件(保存本地,word获取)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Web.Security;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Windows.Forms;//解决方案中 添加引用 System.Windows.Forms(.NET组件) 
    using System.Threading;


    using Microsoft.Office.Interop.Excel;
    using MSExcel = Microsoft.Office.Interop.Excel;
    using System.IO;
    using System.Reflection;


    using Microsoft.Office.Interop.Word;
    using MSWord = Microsoft.Office.Interop.Word;


    namespace WebCharts
    {
        public partial class Index : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {


            }


            


            public void CopyExcel()
            {
                string exclePath = @"C:\ExcelData\MyExcel.xlsx";
                int StartRow = 1;    //读的起始行
                Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();//引用Excel对象
                Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Add(exclePath);
                excel.UserControl = true;
                System.Text.StringBuilder sb = new System.Text.StringBuilder();
                excel.Visible = false;
                for (int i = 0; i < workbook.Worksheets.Count; i++)//循环取所有的Sheet.
                {
                    Microsoft.Office.Interop.Excel.Worksheet sheet = workbook.Worksheets.get_Item(i + 1) as Microsoft.Office.Interop.Excel.Worksheet;//从1开始.
                    for (int row = StartRow; row <= sheet.UsedRange.Rows.Count; row++)
                    {
                        //取单元格值;
                        for (int col = 1; col <= sheet.UsedRange.Columns.Count; col++)
                        {
                            Microsoft.Office.Interop.Excel.Range range = sheet.Cells[row, col] as Microsoft.Office.Interop.Excel.Range;
                            sb.Append("," + col.ToString() + ":" + range.Text);
                        }
                        sb.Append(System.Environment.NewLine);
                        //取存图片;
                        if (sheet.Shapes.Count > row - StartRow)
                        {
                            Microsoft.Office.Interop.Excel.Shape s = sheet.Shapes.Item(row - StartRow + 1) as Microsoft.Office.Interop.Excel.Shape;
                            
                            Clipboard.Clear();//Clipboard类是引用 .NET组件中System.Windows.Forms的
                            s.CopyPicture(Appearance.Button, Microsoft.Office.Interop.Excel.XlCopyPictureFormat.xlBitmap); //COPY到内存。
                            IDataObject iData = Clipboard.GetDataObject();


                            if (iData != null && iData.GetDataPresent(DataFormats.Bitmap))
                            {
                                System.Drawing.Image img = Clipboard.GetImage();  //从内存读取图片
                                if (img != null)
                                {
                                    //保存图片位置
                                    img.Save(@"C:\\ExcelData\\另存为.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);   //保存到本地
                                }
                            }
                            else
                            {
                            }
                        }
                    }
                }
                workbook.Close(false, null, null);
                excel.Quit();
            }


            protected void btnExcel_Click1(object sender, EventArgs e)
            {
                Thread cbThread = new Thread(new ThreadStart(CopyExcel));
                cbThread.TrySetApartmentState(ApartmentState.STA);    //指定单线程,否则无法从剪贴板中读取数据
                cbThread.Start();










                /*  
                 * 创建Word获取上面的图片
                 */
                object path; //文件路径变量
                string strContent; //文本内容变量
                MSWord.Application wordApp; //Word应用程序变量
                MSWord.Document wordDoc; //Word文档变量


                path = @"C:\\ExcelData\\MyWord.docx"; //路径


                wordApp = new MSWord.Application(); //初始化


                //如果文件已存在,则删除
                if (File.Exists((string)path))
                {
                    File.Delete((string)path);
                }


                //由于使用的是COM库,因此有许多变量需要用Missing.Value代替
                Object Nothing = Missing.Value;
                wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing);


                //设置文档的行间距 
                wordApp.Selection.ParagraphFormat.LineSpacing = 15f;


                //移动焦点并换行                 
                object count = 34;
                object WdLine = WdUnits.wdLine;//换一行                  
                wordApp.Selection.MoveDown(ref WdLine, ref count, ref Nothing);//移动焦点                 
                wordApp.Selection.TypeParagraph();//插入段落


                //文档中创建表格 
                Microsoft.Office.Interop.Word.Table newTable = wordDoc.Tables.Add(wordApp.Selection.Range, 25, 3, ref Nothing, ref Nothing);
                //设置表格样式 
                //newTable.Borders.OutsideLineStyle = Microsoft.Office.Interop.Word.WdLineStyle.wdLineStyleThickThinMedGap;//表格外框线
                newTable.Borders.InsideLineStyle = WdLineStyle.wdLineStyleSingle;//表格内架线
                //设置表格内框颜色
                newTable.Borders.InsideColor = WdColor.wdColorWhite;//  White:白色
                newTable.Columns[1].Width = 100f;
                newTable.Columns[2].Width = 220f;
                newTable.Columns[3].Width = 105f;


                //填充表格内容(第一行) 
                newTable.Cell(1, 1).Range.Text = "快速工况数据分析报告";
                newTable.Cell(1, 1).Range.Font.Size = 24;//设置单元格中字体大小为24
                newTable.Cell(1, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(1, 1).Merge(newTable.Cell(1, 3));//合并单元格
                wordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中                 
                wordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;//水平居中                   


                //填充表格内容(第二行)                   
                newTable.Cell(2, 1).Range.Text = "基本信息:\n 1, \n 2,\r 3,";
                newTable.Cell(2, 1).Range.Font.Color = WdColor.wdColorDarkBlue;//设置单元格内字体颜色                   
                newTable.Cell(2, 1).Merge(newTable.Cell(2, 3));//合并单元格  
                wordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;


                //填充表格内容(第3行)                  
                newTable.Cell(3, 1).Range.Text = "名称:";
                newTable.Cell(3, 2).Range.Text = "BrandName";//?
                newTable.Cell(3, 2).Merge(newTable.Cell(3, 3));//合并单元格


                //填充表格内容(第4行)                      
                newTable.Cell(4, 1).Range.Text = "文档创建时间:";
                newTable.Cell(4, 2).Range.Text = DateTime.Now.ToString("yyyy年M月d日h时s分m秒fff毫秒");//
                newTable.Cell(4, 2).Merge(newTable.Cell(4, 3));//合并单元格


                //填充表格内容(第5行)                      
                newTable.Cell(5, 1).Range.Text = "一、转速-扭矩百分比的duty-Cycle图;(Map)";
                newTable.Cell(5, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(5, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(5, 1).Merge(newTable.Cell(5, 3));
                //填充表格内容(第6行)                      
                newTable.Cell(6, 1).Merge(newTable.Cell(6, 3));//合并单元格
                newTable.Cell(6, 1).Select();//选中一行
                //插入图片                  
                string A6FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A6LinkToFile = false;
                object A6SaveWithDocument = true;
                object A6Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A6FileName, ref A6LinkToFile, ref A6SaveWithDocument, ref A6Anchor);


                //填充表格内容(第7行)
                newTable.Cell(7, 1).Range.Text = "二、转速-扭矩百分比的气泡图";
                newTable.Cell(7, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(7, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(7, 1).Merge(newTable.Cell(7, 3));
                //填充表格内容(第8行)
                newTable.Cell(8, 1).Merge(newTable.Cell(8, 3));//合并单元格
                newTable.Cell(8, 1).Select();//选中一行
                //插入图片                  
                string A8FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A8LinkToFile = false;
                object A8SaveWithDocument = true;
                object A8Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A8FileName, ref A8LinkToFile, ref A8SaveWithDocument, ref A8Anchor);


                //填充表格内容(第9行)
                newTable.Cell(9, 1).Range.Text = "三、车速-转速的散点图";
                newTable.Cell(9, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(9, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(9, 1).Merge(newTable.Cell(9, 3));
                //填充表格内容(第10行)
                newTable.Cell(10, 1).Merge(newTable.Cell(10, 3));//合并单元格
                newTable.Cell(10, 1).Select();//选中一行
                //插入图片                  
                string A10FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A10LinkToFile = false;
                object A10SaveWithDocument = true;
                object A10Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A10FileName, ref A10LinkToFile, ref A10SaveWithDocument, ref A10Anchor);


                //填充表格内容(第11行)
                newTable.Cell(11, 1).Range.Text = "四、车速柱状图";
                newTable.Cell(11, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(11, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(11, 1).Merge(newTable.Cell(11, 3));
                //填充表格内容(第12行)
                newTable.Cell(12, 1).Merge(newTable.Cell(12, 3));//合并单元格
                newTable.Cell(12, 1).Select();//选中一行
                //插入图片                  
                string A12FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A12LinkToFile = false;
                object A12SaveWithDocument = true;
                object A12Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A12FileName, ref A12LinkToFile, ref A12SaveWithDocument, ref A12Anchor);
                //将图片设置为四周环绕型                 
                Microsoft.Office.Interop.Word.Shape c = wordDoc.Application.ActiveDocument.InlineShapes[1].ConvertToShape();
                c.WrapFormat.Type = WdWrapType.wdWrapSquare;


                //填充表格内容(第13行)
                newTable.Cell(13, 1).Range.Text = "五、转速柱状图";
                newTable.Cell(13, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(13, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(13, 1).Merge(newTable.Cell(13, 3));
                //填充表格内容(第14行)
                newTable.Cell(14, 1).Merge(newTable.Cell(14, 3));
                newTable.Cell(14, 1).Select();//选中一行
                //插入图片                  
                string A14FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A14LinkToFile = false;
                object A14SaveWithDocument = true;
                object A14Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A14FileName, ref A14LinkToFile, ref A14SaveWithDocument, ref A14Anchor);
                //将图片设置为四周环绕型                 
                Microsoft.Office.Interop.Word.Shape c1 = wordDoc.Application.ActiveDocument.InlineShapes[1].ConvertToShape();
                c1.WrapFormat.Type = WdWrapType.wdWrapSquare;


                //填充表格内容(第15行)
                newTable.Cell(15, 1).Range.Text = "六、档位使用柱状图;(通过车辆信息设定来计算档位)";
                newTable.Cell(15, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(15, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(15, 1).Merge(newTable.Cell(15, 3));
                //填充表格内容(第16行)
                newTable.Cell(16, 1).Merge(newTable.Cell(16, 3));
                newTable.Cell(16, 1).Select();//选中一行
                //插入图片                  
                string A16FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A16LinkToFile = false;
                object A16SaveWithDocument = true;
                object A16Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A16FileName, ref A16LinkToFile, ref A16SaveWithDocument, ref A16Anchor);
                //将图片设置为四周环绕型                 
                Microsoft.Office.Interop.Word.Shape c2 = wordDoc.Application.ActiveDocument.InlineShapes[1].ConvertToShape();
                c2.WrapFormat.Type = WdWrapType.wdWrapSquare;


                //填充表格内容(第17行)
                newTable.Cell(17, 1).Range.Text = "七、油门";
                newTable.Cell(17, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(17, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(17, 1).Merge(newTable.Cell(17, 3));
                //填充表格内容(第18行)
                newTable.Cell(18, 1).Merge(newTable.Cell(18, 3));
                newTable.Cell(18, 1).Select();//选中一行
                //插入图片                  
                string A18FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A18LinkToFile = false;
                object A18SaveWithDocument = true;
                object A18Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A18FileName, ref A18LinkToFile, ref A18SaveWithDocument, ref A18Anchor);


                //填充表格内容(第19行)
                newTable.Cell(19, 1).Range.Text = "八、转速-油耗 气泡图";
                newTable.Cell(19, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(19, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(19, 1).Merge(newTable.Cell(19, 3));
                //填充表格内容(第20行)
                newTable.Cell(20, 1).Merge(newTable.Cell(20, 3));
                newTable.Cell(20, 1).Select();//选中一行
                //插入图片                  
                string A20FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A20LinkToFile = false;
                object A20SaveWithDocument = true;
                object A20Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A20FileName, ref A20LinkToFile, ref A20SaveWithDocument, ref A20Anchor);


                //填充表格内容(第21行)
                newTable.Cell(21, 1).Range.Text = "九、转速-油耗、转速扭矩混合气泡图";
                newTable.Cell(21, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(21, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(21, 1).Merge(newTable.Cell(21, 3));
                //填充表格内容(第22行)
                newTable.Cell(22, 1).Merge(newTable.Cell(22, 3));
                newTable.Cell(22, 1).Select();//选中一行
                //插入图片                  
                string A22FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A22LinkToFile = false;
                object A22SaveWithDocument = true;
                object A22Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A22FileName, ref A22LinkToFile, ref A22SaveWithDocument, ref A22Anchor);


                //填充表格内容(第23行)
                newTable.Cell(23, 1).Range.Text = "十、海拔高度时域曲线,在图上增加两个轴绘制出车速、转速的曲线";
                newTable.Cell(23, 1).Range.Font.Size = 14;//设置单元格中字体大小为14
                newTable.Cell(23, 1).Range.Bold = 2;//设置单元格中字体为粗体
                newTable.Cell(23, 1).Merge(newTable.Cell(23, 3));
                //填充表格内容(第24行)
                newTable.Cell(24, 1).Merge(newTable.Cell(24, 3));
                newTable.Cell(24, 1).Select();//选中一行
                //插入图片                  
                string A24FileName = @"C:\\ExcelData\\另存为.jpg";  //图片所在路径                 
                object A24LinkToFile = false;
                object A24SaveWithDocument = true;
                object A24Anchor = wordDoc.Application.Selection.Range;
                wordDoc.Application.ActiveDocument.InlineShapes.AddPicture(A24FileName, ref A24LinkToFile, ref A24SaveWithDocument, ref A24Anchor);


                //填充表格内容(第25行)
                newTable.Cell(25, 1).Range.Text = "文档创建时间:" + DateTime.Now.ToString("yyyy年M月d日h时s分m秒fff毫秒");
                newTable.Cell(25, 1).Range.Font.Size = 16;//设置单元格中字体大小为24
                newTable.Cell(25, 1).Merge(newTable.Cell(25, 3));//合并单元格
                //填充表格内容(第16行)
                //newTable.Cell(16, 1).Merge(newTable.Cell(16, 3));
                //newTable.Cell(16, 1).Select();//选中一行


                //WdSaveFormat为Word 2007文档的保存格式
                object format = MSWord.WdSaveFormat.wdFormatDocumentDefault;
                //将wordDoc文档对象的内容保存为DOCX文档
                wordDoc.SaveAs(ref path, ref format, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing);
                //关闭wordDoc文档对象
                wordDoc.Close(ref Nothing, ref Nothing, ref Nothing);
                //关闭wordApp组件对象
                wordApp.Quit(ref Nothing, ref Nothing, ref Nothing);
                Console.WriteLine(path + " 创建完毕!");
            }
        }
    }


    展开全文
  • 如果office文件设置了密码,在打开文件的时候就会弹出对话框,提示输入密码才能继续下去,影响了后台服务的跑批执行, 由于在打开文件之前,无法知道当前文件是否有密码,所以在打开文件的时候就设置一个默认密码来...

    如果office文件设置了密码,在打开文件的时候就会弹出对话框,提示输入密码才能继续下去,影响了后台服务的跑批执行,
    由于在打开文件之前,无法知道当前文件是否有密码,所以在打开文件的时候就设置一个默认密码来打开,这样报错了就可
    以直接跳过该文件,下面就介绍每个类型的office文档怎么传入密码打开文档。

    1.Word

    第5个参数是输入密码的地方

    ApplicationClass word = new ApplicationClass();
    word.Visible = true;    //word是否可见
    Document doc = word.Documents.Open(@"F:...\demo.docx", Type.Missing, true, Type.Missing, "123456");
    

    参数预览
    在这里插入图片描述
    2.Excel

    第5个和第6个参数是输入密码的地方

    object missing = System.Reflection.Missing.Value;
    Application excel = new Application();//lauch excel application
    excel.Visible = false; 
    excel.UserControl = true;
    // 以只读的形式打开EXCEL文件
    Workbook wb = excel.Application.Workbooks.Open(".../demo.xlsx", missing, true, missing, "123456", "123456",missing, missing, missing, true, missing, missing, missing, missing, missing);
    

    参数预览
    在这里插入图片描述
    3.PPT

    ppt比较特殊,密码没有参数去输入,而是在文件路径后面加上::用于输入密码

    Application app = new Application(); 
    app.Presentations.Open2007(".../demo.pptx::123456", MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoTrue, MsoTriState.msoFalse); 
    app.ActivePresentation.SaveAs(@"R:\LiChao\Temp\test\CCB_F4I;09_Field Work - Part 1 Field Work.pptx", PpSaveAsFileType.ppSaveAsDefault, MsoTriState.msoFalse); 
    app.ActivePresentation.Close();
    

    参数预览
    在这里插入图片描述

    展开全文
  • C#操作office方面的总结 Excel和Word http://www.cnblogs.com/Dragon-China/archive/2007/04/03/698371.html
  • 1、 C#操作Word的超详细总结 转载于:https://www.cnblogs.com/hxh88/p/6078697.html
  • C# 操作office文件

    2010-10-25 13:00:00
    http://blog.csdn.net/wudi626/archive/2008/04/28/2337857.aspx
  • C#操作Office组件(六)

    千次阅读 2014-12-18 11:15:57
    一、使用C#创建PowerPoint文档  Microsoft PowerPoint是Microsoft Office的一个组件,是一款功能强大的演示文稿处理软件,它与其他软件的差别在于其能够创建精美的演示性文档,并且有条理地显示结果。Microsoft ...
  • C#操作Office组件(七)

    2014-12-18 14:07:43
     PDF文档格式是网络中一种重要的文档格式,在某些领域应用比Office系列文档格式还要广泛。因此在应用程序的需求中经常需要对PDF格式的文档进行创建、修改和读取等操作。本节将介绍PDF文档的创建。 添加对...
  • c#操作Office 警告:方法和非方法之间存在二义性 这里是我自己写的文章,感觉还不错,大家可以参考一下。 http://blog.sina.com.cn/s/blog_149e9d2ec0102vun0.html 最近在做Office方面的开发...
  • 关于Openxml和c#操作office

    千次阅读 2012-12-18 15:31:56
    研究了好几天了,我费了好大劲,才弄懂,我到底要研究的是什么。由此感悟,知道内容不难,难的是读懂标题。
  • 1、 Microsoft.Office.Interop.Word.Application wordApp = new ApplicationClass()word对象 2、 Microsoft.Office.Interop.Word.Document wordDoc = wor
  • //C#操作Word书签 foreach (Microsoft.Office.Interop.Word.Bookmark bm in doc.Bookmarks) { switch (bm.Name) { case "a": bm.Select(); bm.Range.Text = "a"; break; case "b": bm.Select(); bm....
  • 出现此问题的原因是编译平台选择错误,因为按照默认的设置,有可能会向COM方法传递64位的值,而office的可执行文件有可能是编译在x86的,从而引起异常解决办法如下: 在vs中,项目=》XXX属性(X
  • 根据不同的系统设置不将有所不同。 ... 1、首先确定是否已安装office。  2、在"开始"->"运行"中输入dcomcnfg.exe启动"组件服务"。  3、依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置
  • 最近发现了一个奇怪的问题,C#无法调用office的组件,提示报错,相关信息如下: Unable to cast ...
  • OleDbDataAdapter方式:
  • 无法将类型为“Microsoft.Office.Interop.PowerPoint.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.PowerPoint._Application”。此操作失败的原因是对 IID 为“{91493442-5A91-11CF-...
  • c# office操作

    2012-11-09 11:57:54
    c# office操作
  • C#office操作

    2011-04-07 09:19:32
    C#office操作,包括对word,excel,powerpoint的创建文档,插入文字,插入表格,图片等等操作

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,987
精华内容 7,594
关键字:

c#操作office

c# 订阅