1.激活组件

AxFramerControl改控件的dll自己再网上百度下下载这里不多讲

/// <summary>
        /// 检测是否注册控件
        /// </summary>
        public static void CheckDsoFramerExists()
        {
            string path = @"c:\windows\system32\dsoframer.ocx";
            string filepath = Application.StartupPath;
            if (!File.Exists(path))
            {
                File.Copy(filepath + "\\dsoframer.ocx", path);
            }
            ProcessStartInfo psi = new ProcessStartInfo("regsvr32", "/s " + path);
            Process.Start(psi);
        }

2.开始操作写入表格

里面包含创建单元格  单元格复制 单元格字体居中  合并单元格等操作

/// <summary>
        /// 创建人员分布表
        /// </summary>
        /// <param name="obj"></param>
        public static void CreateTempPersonInfoByCom(object obj)
        {
            PPT.Presentation ppt = obj as PPT.Presentation;
            if (ppt == null) { return; }
            //清楚ppt现有内容
            int slides = ppt.Slides.Count;
            for (int i = 0; i < slides; i++)
            {
                ppt.Slides[1].Delete(); ;
            }
            ppt.Slides.Add(1, PPT.PpSlideLayout.ppLayoutTable);
            foreach (PPT.Slide item in ppt.Slides)
            {
                item.Shapes.Range(1).Delete();
                item.Shapes.Range(1).Delete();
                item.Shapes.AddTable(7, 9, 10, 10, 700, 300);
                PPT.Table table = item.Shapes.Range(1).Table;
                if (table != null)
                {
                    table.Cell(1, 1).Shape.TextFrame.TextRange.Text = "类别";
                    table.Cell(1, 2).Shape.TextFrame.TextRange.Text = "数量";
                    table.Cell(1, 3).Shape.TextFrame.TextRange.Text = "独立操作人员数量";
                    table.Cell(1, 4).Shape.TextFrame.TextRange.Text = "工龄分布";
                    table.Cell(1, 8).Shape.TextFrame.TextRange.Text = "每日人员变动情况";
                    table.Cell(1, 9).Shape.TextFrame.TextRange.Text = "备注";
                    table.Cell(2, 4).Shape.TextFrame.TextRange.Text = "入职五年以上";
                    table.Cell(2, 5).Shape.TextFrame.TextRange.Text = "入职3-5年";
                    table.Cell(2, 6).Shape.TextFrame.TextRange.Text = "入职1-3年";
                    table.Cell(2, 7).Shape.TextFrame.TextRange.Text = "入职1年以下";
                    table.Cell(3, 1).Shape.TextFrame.TextRange.Text = "正式";
                    table.Cell(4, 1).Shape.TextFrame.TextRange.Text = "试用";
                    table.Cell(5, 1).Shape.TextFrame.TextRange.Text = "实习";
                    table.Cell(6, 1).Shape.TextFrame.TextRange.Text = "劳务";
                    table.Cell(7, 1).Shape.TextFrame.TextRange.Text = "合计";
                    //循环设置单元格样式
                    SetTableStyle(table);
                    //设置合并操作
                    table.Cell(1, 1).Merge(table.Cell(2, 1));
                    table.Cell(1, 2).Merge(table.Cell(2, 2));
                    table.Cell(1, 3).Merge(table.Cell(2, 3));
                    table.Cell(1, 8).Merge(table.Cell(2, 8));
                    table.Cell(1, 9).Merge(table.Cell(2, 9));
                    table.Cell(1, 4).Merge(table.Cell(1, 7));
                }
            }
           
        }

//设置样式

/// <summary>

/// 设置table样式

/// </summary>

/// <param name="table"></param>

private static void SetTableStyle(PPT.Table table)

{

if (table == null) { return; }

//循环设置单元格样式

for (int i = 0; i < table.Rows.Count; i++)

{

for (int j = 0; j < table.Columns.Count; j++)

{

table.Cell(i + 1, j + 1).Shape.TextFrame.TextRange.Font.Size = 14;

table.Cell(i + 1, j + 1).Shape.TextFrame.HorizontalAnchor = MsoHorizontalAnchor.msoAnchorCenter;

table.Cell(i + 1, j + 1).Shape.TextFrame.VerticalAnchor = MsoVerticalAnchor.msoAnchorMiddle;

}

}

}

3.效果图如下

C#操作PPT表格的更多相关文章

  1. JAVA通过COM接口操作PPT

    一. 背景说明 在Eclipse环境下,开发JAVA代码操作PPT,支持对PPT模板的修改.包括修改文本标签.图表.表格.满足大多数软件生成PPT报告的要求,即先收工创建好模板,在程序中修改模板数据. ...

  2. C++通过COM接口操作PPT

    一. 背景 在VS环境下,开发C++代码操作PPT,支持对PPT模板的修改.包括修改文本标签.图表.表格.满足大多数软件生成PPT报告的要求,先手工创建好PPT模板,在程序中修改模板数据. 二. 开发 ...

  3. java poi 操作ppt

    java poi 操作ppt 可以参考: https://www.w3cschool.cn/apache_poi_ppt/apache_poi_ppt_installation.html http:/ ...

  4. 黄聪:C#操作Word表格的常见操作(转)

    几种常见C#操作Word表格操作有哪些呢?让我们来看看具体的实例演示: bool saveChange = false; //C#操作Word表格操作 object missing = System. ...

  5. c#操作word表格

    http://www.webshu.net/jiaocheng/programme/ASPNET/200804/6499.html <% if request("infoid" ...

  6. qt 操作excel表格

     自己编写的一个Qt C++类,用于操作excel表格,在Qt中操作excel需在.pro中增加CONFIG+=qaxcontainer配置. 1.打开Excel:objExcel = new QAx ...

  7. 转发:VB程序操作word表格(文字、图片)

    很多人都知道,用vb操作excel的表格非常简单,但是偏偏项目中碰到了VB操作word表格的部分,google.baidu搜爆了,都没有找到我需要的东西.到是搜索到了很多问这个问题的记录.没办法,索性 ...

  8. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  9. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

随机推荐

  1. 使用react做的聊天对话列表

    刚刚接触react   可能写的地方有错误或者不完善的地方欢迎大家给指正 下面开始正题 首先分析页面基于react的特性--把页面中所有显示内容看做模块加载 本页面可以看做一个大的模块,我们暂且命名为 ...

  2. RDLC 子报表

    1.RDLC 设计页面,拖入table或者矩形 2.右击表格或者矩形单元格,插入--子报表 3.输入名称和将此报表用作子报表 名称:显示在设计页面上的,仅作观看作用 将此报表用作子报表:填写目录下的需 ...

  3. jQuery 学习笔记_01

    jQuery是一个简洁快速灵活的JavaScript框架,能让你在网页上简单的操作文档.处理事件.实现特效并为Web页面添加Ajax交互. 1 jQuery大多是基于 document 一个或多个元素 ...

  4. laravel old

    最近做一个laravel框架下的一个网页.遇到了old 无法点击选中的问题,捉摸好久,原来,laravel下的old 是基于seesion下的. 如果想用old必须要在session有的情况下.

  5. (原创)Xilinx的ISE生成模块ngc网表文件

    ISE中,右击“Synthesize”,选中“Process Properties”,将“Xilinx Specific Options:-iobuf”的对勾取消. 将取消模块的ioBuff,因为模块 ...

  6. 《CSS权威指南》读书笔记

    一.css和文档层叠 css规定了冲突规则,这些规则统称为层叠.这些规则定义了样式发生冲突时以优先级高的为准. 常用的优先级判定: 1. 开发者样式>读者样式>浏览器样式(除非使用!imp ...

  7. 控制移动端页面的缩放(meta)

    meta标签中的content属性里有一个width=device-width的值,这个值就是用来告诉浏览器,该页面将要使用设备的宽度来解析,后面的属性值则是告诉该页面: user-scalable= ...

  8. C# for循环 循环中先求长度还是使用list.Count,哪个效率高

    这种问法可能问的不好.应该说成是第一种方法完全没有必要,很多人可能以为那样会为代码带来效率,而实际上是不会给效率带来任何提升. 因为事实上,索引器内部,为了安全期间,还是会去求整个list的count ...

  9. LOL

    当输入数据一样时,计算结果是一样的,但运行时间的差别很大.在算法正确的前提下,应该选择算法效率高的 嵌入式软件,BSP驱动,通信协议,上层应用软件. 多协议标签交换(MPLS)是一种用于快速数据包交换 ...

  10. 说说ASP.NET的表单验证

    FormsAuthentication是ASP.NET运行时提供的一种Web身份验证方案,以cookie为信息载体,同其它身份验证方案相比,此方案广泛应用于各类的Web应用中,其实现原理其实和具体的W ...