zoukankan      html  css  js  c++  java
  • AceyOffice教程复制列

    在操作Excel内容时,难免会用到复制行和列等操作,复制行操作已在上一章http://www.cnblogs.com/happyfish78/archive/2013/01/15/2860587.html进行过具体描述,下面我们

    看下如何进行复制列的操作,首先看下要操作的模板,如图:

    一、微软Excel实现操作

    如果要想将第2列中内容复制到第5列中,要如何才能实现。先看下微软Excel中是如何进行操作的:

    1.首先选择要被复制的列,简单鼠标右键,选择复制选项。

    2.再选择要复制的列,鼠标右键选择粘贴选项即可。

    只要简单2个步骤就能实现复制列的效果,那下面我们再来看下如何用Acey.ExcelX组件如何实现,和Excel操作的效果相比是否简单、清晰呢?

    二、用Acey.ExcelX组件实现

    首先导入命名空间:

    using Acey.ExcelX;

     public void Sample()
     {
        string path = @"Files\CopyColumn.xls";
        //创建工作薄通过打开。
       IWorkbook workbook = ExcelxApplication.Open(path);
        //获取指定索引的工作表。
       IWorksheet worksheet = workbook.Worksheets[0];
        //获取指定列对象。
       IColumn sourceColumn = worksheet.Columns["B"];
        //获取指定目标列对象。
       IColumn destColumn = worksheet.Columns["E"];
        //复制指定源行对象。
       destColumn.Copy(sourceColumn);
    
         path = @"d:\book1.xls";
         workbook.SaveAs(path, FileFormat.Excel97To2003);
    }

    运行上面代码生成Excel的效果如下:

    先分析下代码的含义:

    1. string path = @"Files\CopyColumn.xls"; IWorkbook workbook = ExcelxApplication.Open(path);创建工作薄对象通过打开指定文件。
    2. IWorksheet worksheet = workbook.Worksheets[0]; 获取指定索引的工作表对象,这里我们获取是工作薄中第一个工作表对象。

    3.IColumn sourceColumn = worksheet.Columns["B"]; 创建列对象通过列的名称,Acey.ExcelX组件接口除了支持通过列名称来获取列对象,也指定通过列索引来

    获取列对象,所以上面的代码可以被写成:IColumn sourceColumn = worksheet.Columns[1];,用列名称获取列对象更清晰。

    4.destColumn.Copy(sourceColumn); 将指定源列对象的内容复制到目标列对象中。Copy方法:复制内容(包含数据和样式)。IColumn对象除了指定Copy方法外还

    支持CopyFormat方法,该方法只复制样式,不复制数据。

    说明:样式包含边框、字体、数据类型、对齐方式、角度和列宽等因素。

    三、总结

    用Acey.ExcelX组件能轻松实现列复制操作。

  • 相关阅读:
    autocare使用命令
    使用国内豆瓣源
    HCNA(二)以太网的帧结构
    HCNA(一)网络传输介质
    Python
    Python
    Python
    Delphi
    HCNP
    Python
  • 原文地址:https://www.cnblogs.com/happyfish78/p/2862198.html
Copyright © 2011-2022 走看看