精华内容
下载资源
问答
  • 现在有个excel2007的模板,需要把excel2007模板中的sheet复制到要操作的excel2007中,哪位大神能帮忙解决下
  • worksheet.Activate(); worksheet.Cells.Select(); worksheet.Cells.Copy(Type.Missing); //app.DisplayAlerts = false;... //worksheet.Copy(Missing.Value, sheet);...//这样复制行宽列宽不能复制
  • C# 操作Excel ---复制Excelsheet

    千次阅读 2011-05-04 13:36:00
    C# 怎么Excel1的Sheet1 拷贝到 Excel2的Sheet1后面 备注:不是用一个Application打开两个Excel的方法,而是在两个ExcelSheet间直接拷贝操作   在C#中用代码实现上述操作:   ...

    C# 怎么把Excel1的Sheet1 拷贝到 Excel2的Sheet1后面

    备注:不是用一个Application打开两个Excel的方法,而是在两个Excel的Sheet间直接拷贝操作

     

    在C#中用代码实现上述操作: 

     Excel.Workbook bookSource = null;

    Excel.Worksheet sheetSource = null;

    bookSource = app.Workbooks._Open(srcFileNamePath, Missing.Value, Missing.Value, Missing.Value, Missing.Value , Missing.Value, Missing.Value, Missing.Value, Missing.Value , Missing.Value, Missing.Value, Missing.Value, Missing.Value);

    sheetSource = bookSource.Worksheets[1] as Excel.Worksheet; sheetSource.Copy(this.missing, WorkSheet_Active);

    展开全文
  • 1、新建一个文件夹、将要合并的表格放到里面、新建一个表格、用excel打开、右击Sheet12、选择查看代码(PS:excel有着一项,WPS没有)3、将下列代码复制到文本框中:Sub 合并当前目录下所有工作簿的全部工作表()Dim ...

    1、新建一个文件夹、将要合并的表格放到里面、新建一个表格、用excel打开、右击Sheet1

    2、选择查看代码(PS:excel有着一项,WPS没有)

    3、将下列代码复制到文本框中:

    Sub 合并当前目录下所有工作簿的全部工作表()

    Dim MyPath, MyName, AWbName

    Dim Wb As workbook, WbN As String

    Dim G As Long

    Dim Num As Long

    Dim BOX As String

    Application.ScreenUpdating = False

    MyPath = ActiveWorkbook.Path

    MyName = Dir(MyPath & "\" & "*.xls")

    AWbName = ActiveWorkbook.Name

    Num = 0

    Do While MyName <> ""

    If MyName <> AWbName Then

    Set Wb = Workbooks.Open(MyPath & "\" & MyName)

    Num = Num + 1

    With Workbooks(1).ActiveSheet

    .Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

    For G = 1 To Sheets.Count

    Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)

    Next

    WbN = WbN & Chr(13) & Wb.Name

    Wb.Close False

    End With

    End If

    MyName = Dir

    Loop

    Range("B1").Select

    Application.ScreenUpdating = True

    MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

    End Sub

    4、点击运行、一段时间(取决于表格的大小和多少)后,合并完成了。

    展开全文
  • NPOI中如何复制Sheet

    万次阅读 2013-08-01 17:34:03
    NPOI已经发布到了2.0的版本,可喜的是该版本支持到了Excel2007,但缺憾的是没有复制SHEET表的功能,只有一个CloneSheet方法,确实没明白怎么使用。所以在网上搜索了一下,只找一个JAVA的版本,好像也是自己写的代码...

    NPOI已经发布到了2.0的版本,可喜的是该版本支持到了Excel2007,但缺憾的是没有复制SHEET表的功能,只有一个CloneSheet方法,确实没明白怎么使用。所以在网上搜索了一下,只找一个JAVA的版本,好像也是自己写的代码实现的。于是拿过来翻译了一下,复制SHEET后的格式基本没变,但单元格的宽度没有实现,ICell接口没有类似于Width的属性,只好作罢。

    哪位如果知道CloneSheet方法的使用,恳请留言,免去不必要的操作和代码。

     

    public class SheetClone
        {
            public static void CopyCellStyle(IWorkbook wb, ICellStyle fromStyle, ICellStyle toStyle)
            {
                toStyle.Alignment = fromStyle.Alignment;
                //边框和边框颜色
                toStyle.BorderBottom = fromStyle.BorderBottom;
                toStyle.BorderLeft = fromStyle.BorderLeft;
                toStyle.BorderRight = fromStyle.BorderRight;
                toStyle.BorderTop = fromStyle.BorderTop;
                toStyle.TopBorderColor = fromStyle.TopBorderColor;
                toStyle.BottomBorderColor = fromStyle.BottomBorderColor;
                toStyle.RightBorderColor = fromStyle.RightBorderColor;
                toStyle.LeftBorderColor = fromStyle.LeftBorderColor;
    
                //背景和前景
                toStyle.FillBackgroundColor = fromStyle.FillBackgroundColor;
                toStyle.FillForegroundColor = fromStyle.FillForegroundColor;
    
                toStyle.DataFormat = fromStyle.DataFormat;
                toStyle.FillPattern = fromStyle.FillPattern;
                //toStyle.Hidden=fromStyle.Hidden;
                toStyle.IsHidden = fromStyle.IsHidden;
                toStyle.Indention = fromStyle.Indention;//首行缩进
                toStyle.IsLocked = fromStyle.IsLocked;
                toStyle.Rotation = fromStyle.Rotation;//旋转
                toStyle.VerticalAlignment = fromStyle.VerticalAlignment;
                toStyle.WrapText = fromStyle.WrapText;
                toStyle.SetFont(fromStyle.GetFont(wb));
            }
    
            /// <summary>
            /// 复制表
            /// </summary>
            /// <param name="wb"></param>
            /// <param name="fromSheet"></param>
            /// <param name="toSheet"></param>
            /// <param name="copyValueFlag"></param>
            public static void CopySheet(IWorkbook wb, ISheet fromSheet, ISheet toSheet, bool copyValueFlag)
            {
                //合并区域处理
                MergerRegion(fromSheet, toSheet);
                System.Collections.IEnumerator rows = fromSheet.GetRowEnumerator();
                while (rows.MoveNext())
                {
                    IRow row = null;
                    if (wb is HSSFWorkbook)
                        row = rows.Current as HSSFRow;
                    else
                        row = rows.Current as NPOI.XSSF.UserModel.XSSFRow;
                    IRow newRow = toSheet.CreateRow(row.RowNum);
                    CopyRow(wb, row, newRow, copyValueFlag);
                }
            }
    
            /// <summary>
            /// 复制行
            /// </summary>
            /// <param name="wb"></param>
            /// <param name="fromRow"></param>
            /// <param name="toRow"></param>
            /// <param name="copyValueFlag"></param>
            public static void CopyRow(IWorkbook wb, IRow fromRow, IRow toRow, bool copyValueFlag)
            {
                System.Collections.IEnumerator cells = fromRow.GetEnumerator(); //.GetRowEnumerator();
                toRow.Height = fromRow.Height;
                while (cells.MoveNext())
                {
                    ICell cell = null;
                    //ICell cell = (wb is HSSFWorkbook) ? cells.Current as HSSFCell : cells.Current as NPOI.XSSF.UserModel.XSSFCell;
                    if (wb is HSSFWorkbook)
                        cell = cells.Current as HSSFCell;
                    else
                        cell = cells.Current as NPOI.XSSF.UserModel.XSSFCell;
                    ICell newCell = toRow.CreateCell(cell.ColumnIndex);
                    CopyCell(wb, cell, newCell, copyValueFlag);
                }
            }
    
    
            /// <summary>
            /// 复制原有sheet的合并单元格到新创建的sheet
            /// </summary>
            /// <param name="fromSheet"></param>
            /// <param name="toSheet"></param>
            public static void MergerRegion(ISheet fromSheet, ISheet toSheet)
            {
                int sheetMergerCount = fromSheet.NumMergedRegions;
                for (int i = 0; i < sheetMergerCount; i++)
                {
                    //Region mergedRegionAt = fromSheet.GetMergedRegion(i); //.MergedRegionAt(i);
                    //CellRangeAddress[] cra = new CellRangeAddress[1];
                    //cra[0] = fromSheet.GetMergedRegion(i);
                    //Region[] rg = Region.ConvertCellRangesToRegions(cra);
                    toSheet.AddMergedRegion(fromSheet.GetMergedRegion(i));
                }
            }
    
            /// <summary>
            /// 复制单元格
            /// </summary>
            /// <param name="wb"></param>
            /// <param name="srcCell"></param>
            /// <param name="distCell"></param>
            /// <param name="copyValueFlag"></param>
            public static void CopyCell(IWorkbook wb, ICell srcCell, ICell distCell, bool copyValueFlag)
            {
                ICellStyle newstyle = wb.CreateCellStyle();
                CopyCellStyle(wb, srcCell.CellStyle, newstyle);
                
                //样式
                distCell.CellStyle = newstyle;
                //评论
                if (srcCell.CellComment != null)
                {
                    distCell.CellComment = srcCell.CellComment;
                }
                // 不同数据类型处理
                CellType srcCellType = srcCell.CellType;
                distCell.SetCellType(srcCellType);
                if (copyValueFlag)
                {
                    if (srcCellType == CellType.NUMERIC)
                    {
    
                        if (HSSFDateUtil.IsCellDateFormatted(srcCell))
                        {
                            distCell.SetCellValue(srcCell.DateCellValue);
                        }
                        else
                        {
                            distCell.SetCellValue(srcCell.NumericCellValue);
                        }
                    }
                    else if (srcCellType == CellType.STRING)
                    {
                        distCell.SetCellValue(srcCell.RichStringCellValue);
                    }
                    else if (srcCellType == CellType.BLANK)
                    {
                        // nothing21
                    }
                    else if (srcCellType == CellType.BOOLEAN)
                    {
                        distCell.SetCellValue(srcCell.BooleanCellValue);
                    }
                    else if (srcCellType == CellType.ERROR)
                    {
                        distCell.SetCellErrorValue(srcCell.ErrorCellValue);
                    }
                    else if (srcCellType == CellType.FORMULA)
                    {
                        distCell.SetCellFormula(srcCell.CellFormula);
                    }
                    else
                    { // nothing29
                    }
                }
            }
        }

    展开全文
  • NPOI 复制Sheet(转载)

    万次阅读 2014-02-20 16:04:57
    NPOI已经发布到了2.0的版本,可喜的是该版本支持到了Excel2007,但缺憾的是没有复制SHEET表的功能,只有一个CloneSheet方法,确实没明白怎么使用。所以在网上搜索了一下,只找一个JAVA的版本,好像也是自己写的代码...

    以下内容由chocolateboy兄所写,在此仅作为转帖

    原文载于:http://blog.csdn.net/chocolateboy/article/details/9705425

     

    NPOI已经发布到了2.0的版本,可喜的是该版本支持到了Excel2007,但缺憾的是没有复制SHEET表的功能,只有一个CloneSheet方法,确实没明白怎么使用。所以在网上搜索了一下,只找一个JAVA的版本,好像也是自己写的代码实现的。于是拿过来翻译了一下,复制SHEET后的格式基本没变,但单元格的宽度没有实现,ICell接口没有类似于Width的属性,只好作罢。

    哪位如果知道CloneSheet方法的使用,恳请留言,免去不必要的操作和代码。

    1. public class SheetClone
    2. {
    3. public staticvoid CopyCellStyle(IWorkbook wb, ICellStyle fromStyle, ICellStyle toStyle)
    4. {
    5. toStyle.Alignment = fromStyle.Alignment;
    6. //边框和边框颜色
    7. toStyle.BorderBottom = fromStyle.BorderBottom;
    8. toStyle.BorderLeft = fromStyle.BorderLeft;
    9. toStyle.BorderRight = fromStyle.BorderRight;
    10. toStyle.BorderTop = fromStyle.BorderTop;
    11. toStyle.TopBorderColor = fromStyle.TopBorderColor;
    12. toStyle.BottomBorderColor = fromStyle.BottomBorderColor;
    13. toStyle.RightBorderColor = fromStyle.RightBorderColor;
    14. toStyle.LeftBorderColor = fromStyle.LeftBorderColor;
    15. //背景和前景
    16. toStyle.FillBackgroundColor = fromStyle.FillBackgroundColor;
    17. toStyle.FillForegroundColor = fromStyle.FillForegroundColor;
    18. toStyle.DataFormat = fromStyle.DataFormat;
    19. toStyle.FillPattern = fromStyle.FillPattern;
    20. //toStyle.Hidden=fromStyle.Hidden;
    21. toStyle.IsHidden = fromStyle.IsHidden;
    22. toStyle.Indention = fromStyle.Indention;//首行缩进
    23. toStyle.IsLocked = fromStyle.IsLocked;
    24. toStyle.Rotation = fromStyle.Rotation;//旋转
    25. toStyle.VerticalAlignment = fromStyle.VerticalAlignment;
    26. toStyle.WrapText = fromStyle.WrapText;
    27. toStyle.SetFont(fromStyle.GetFont(wb));
    28. }
    29. /// <summary>
    30. /// 复制表
    31. /// </summary>
    32. /// <param name="wb"></param>
    33. /// <param name="fromSheet"></param>
    34. /// <param name="toSheet"></param>
    35. /// <param name="copyValueFlag"></param>
    36. public staticvoid CopySheet(IWorkbook wb, ISheet fromSheet, ISheet toSheet,bool copyValueFlag)
    37. {
    38. //合并区域处理
    39. MergerRegion(fromSheet, toSheet);
    40. System.Collections.IEnumerator rows = fromSheet.GetRowEnumerator();
    41. while (rows.MoveNext())
    42. {
    43. IRow row = null;
    44. if (wb is HSSFWorkbook)
    45. row = rows.Current as HSSFRow;
    46. else
    47. row = rows.Current as NPOI.XSSF.UserModel.XSSFRow;
    48. IRow newRow = toSheet.CreateRow(row.RowNum);
    49. CopyRow(wb, row, newRow, copyValueFlag);
    50. }
    51. }
    52. /// <summary>
    53. /// 复制行
    54. /// </summary>
    55. /// <param name="wb"></param>
    56. /// <param name="fromRow"></param>
    57. /// <param name="toRow"></param>
    58. /// <param name="copyValueFlag"></param>
    59. public staticvoid CopyRow(IWorkbook wb, IRow fromRow, IRow toRow,bool copyValueFlag)
    60. {
    61. System.Collections.IEnumerator cells = fromRow.GetEnumerator();//.GetRowEnumerator();
    62. toRow.Height = fromRow.Height;
    63. while (cells.MoveNext())
    64. {
    65. ICell cell = null;
    66. //ICell cell = (wb is HSSFWorkbook) ? cells.Current as HSSFCell : cells.Current as NPOI.XSSF.UserModel.XSSFCell;
    67. if (wb is HSSFWorkbook)
    68. cell = cells.Current as HSSFCell;
    69. else
    70. cell = cells.Current as NPOI.XSSF.UserModel.XSSFCell;
    71. ICell newCell = toRow.CreateCell(cell.ColumnIndex);
    72. CopyCell(wb, cell, newCell, copyValueFlag);
    73. }
    74. }
    75. /// <summary>
    76. /// 复制原有sheet的合并单元格到新创建的sheet
    77. /// </summary>
    78. /// <param name="fromSheet"></param>
    79. /// <param name="toSheet"></param>
    80. public staticvoid MergerRegion(ISheet fromSheet, ISheet toSheet)
    81. {
    82. int sheetMergerCount = fromSheet.NumMergedRegions;
    83. for (int i = 0; i < sheetMergerCount; i++)
    84. {
    85. //Region mergedRegionAt = fromSheet.GetMergedRegion(i); //.MergedRegionAt(i);
    86. //CellRangeAddress[] cra = new CellRangeAddress[1];
    87. //cra[0] = fromSheet.GetMergedRegion(i);
    88. //Region[] rg = Region.ConvertCellRangesToRegions(cra);
    89. toSheet.AddMergedRegion(fromSheet.GetMergedRegion(i));
    90. }
    91. }
    92. /// <summary>
    93. /// 复制单元格
    94. /// </summary>
    95. /// <param name="wb"></param>
    96. /// <param name="srcCell"></param>
    97. /// <param name="distCell"></param>
    98. /// <param name="copyValueFlag"></param>
    99. public staticvoid CopyCell(IWorkbook wb, ICell srcCell, ICell distCell,bool copyValueFlag)
    100. {
    101. ICellStyle newstyle = wb.CreateCellStyle();
    102. CopyCellStyle(wb, srcCell.CellStyle, newstyle);
    103. //样式
    104. distCell.CellStyle = newstyle;
    105. //评论
    106. if (srcCell.CellComment != null)
    107. {
    108. distCell.CellComment = srcCell.CellComment;
    109. }
    110. // 不同数据类型处理
    111. CellType srcCellType = srcCell.CellType;
    112. distCell.SetCellType(srcCellType);
    113. if (copyValueFlag)
    114. {
    115. if (srcCellType == CellType.NUMERIC)
    116. {
    117. if (HSSFDateUtil.IsCellDateFormatted(srcCell))
    118. {
    119. distCell.SetCellValue(srcCell.DateCellValue);
    120. }
    121. else
    122. {
    123. distCell.SetCellValue(srcCell.NumericCellValue);
    124. }
    125. }
    126. else if (srcCellType == CellType.STRING)
    127. {
    128. distCell.SetCellValue(srcCell.RichStringCellValue);
    129. }
    130. else if (srcCellType == CellType.BLANK)
    131. {
    132. // nothing21
    133. }
    134. else if (srcCellType == CellType.BOOLEAN)
    135. {
    136. distCell.SetCellValue(srcCell.BooleanCellValue);
    137. }
    138. else if (srcCellType == CellType.ERROR)
    139. {
    140. distCell.SetCellErrorValue(srcCell.ErrorCellValue);
    141. }
    142. else if (srcCellType == CellType.FORMULA)
    143. {
    144. distCell.SetCellFormula(srcCell.CellFormula);
    145. }
    146. else
    147. { // nothing29
    148. }
    149. }
    150. }
    151. }
    展开全文
  • 写了一个程序: 复制一个excel 中的某2列 并保持成元组形式, 并将元组中的值赋值到另一个excel 的目标单元格之中 我的代码如下: ``` import openpyxl import xlrd def get_infor(): book = xlrd.open...
  • 一、读取excel这里介绍...复制代码 代码如下:import xlrdwb = xlrd.open_workbook('myworkbook.xls')检查表单名字:复制代码 代码如下:wb.sheet_names()得到第一张表单,两种方式:索引和名字复制代码 代码如下:sh ...
  • 一、读取excel这里介绍...复制代码 代码如下:import xlrdwb = xlrd.open_workbook('myworkbook.xls')检查表单名字:复制代码 代码如下:wb.sheet_names()得到第一张表单,两种方式:索引和名字复制代码 代码如下:sh ...
  • // 打开sheet_Summary ws.Range["A1 : O28"].Copy(); //复制A1: O 28 ws.Range["A1 : O28"].Insert(Microsoft.Office.Interop.Excel.XlDirection.xlDown);//黏贴 for (int i = 0; i ; i++) { shap = ws....
  • 首先复制一份Sheet2 对Sheet1进行操作选中A列姓名 数据->删除重复项->以前选中区域排序->删除重复项 然后删除对应成绩项选中张三对应成绩B2,选中函数SUMIF 以上即可得出对用姓名总的成绩 转载...
  • 解决双击excel文件打开多个excel.exe进程的问题有些时候,双击两个excel文件,会打开多个excel进程,不同进程之间不能复制粘贴公式,只能粘贴数值,很不方便。怎么样双击多个excel文件只打开一个excel进程呢?1.使用...
  • 请问我这个java代码怎么添加poi包的代码才能实现删除excel文件的第一行? ``` package cn.ayee.xhd_Ledger; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File...
  • 原先Python2.7是先打开Excel表,后复制表,获取sheet,读取rows,在第rows+1行写入数据,然后保存 #读取xls, r_xls = ExcelRead.open_workbook('test.xls') r_sheet = r_xls.sheet_by_index(0) rows = r_sheet....
  • screen_area.CopyPicture() # 复制图片区域 sheet.Paste() # 粘贴 #img_name='告警截图' img_name=save_image_name excel.Selection.ShapeRange.Name = img_name # 将刚刚选择的Shape重命名,避免与已有...
  • (常见问题)在同一个excel表格中不同工作表应该怎么切换工作表在不同工作簿之间的复制技巧和方法Excel 关于同一EXCEL中,不同工作表之间的数据如何实现excel表中不同工作表中数据的连接excel表格中怎么让不同sheet...
  • 可以通过更改baiex怎么把100多个EXCEL文件合并成一个 cel代码来合并多个文件。 详细步骤: 1、新建du一个文件夹。 2、将要合并的表格zhi放到里面dao。 3、新建一个表格。 4、用excel打开。 5、右击Sheet1。 6、选择...
  • Excel常用操作_vbs

    2019-05-25 23:49:25
    复制过来的数据只留值,还是连公式一起拷贝过来? 用的excel版本都是同一个版本吗? 使用的时候,需要目录下多个表单批处理吗?想要怎么用?如果对方没有想法,就先打听他们平常的用法,自己想清楚了再给建议。 文件...
  • excel的使用

    2012-11-25 17:06:01
    图1(5) 多张工作表中输入相同的内容几个工作表中同一位置填入同一数据时,可以选中一张工作表,然后按住Ctrl键,再单击窗口左下角的Sheet1、Sheet2......来直接选择需要输入相同内容的多个工作表,接着在其中的...
  • 一个个复制非常麻烦,那么我们怎么来进行简化操作: 1:新建sheet1工作表 2:在sheet1标签上右键 &amp;gt; 查看代码 3:插入如下代码 Sub 合并当前工作簿下的所有工作表() Application.ScreenUpdating ...
  • 刚开始的时候,领导给了我一张excel表,她说每周都不定期更新,每次更新都是复制粘贴,不但容易出错,而且要花费2个多小时,然后她问我,你在下班时间可以考虑怎么用脚本如python,或VBA把这个东西做批量化处理,...
  • '代码中长单词怎么记住的? '比如copyfromrecordset可以拆开记忆,copy、from、recordset 这三个单词意思知道吧,就是“复制、从、记录集” '----------------- 'Sql = "select sum(分数) from [sheet1$]"这里加...
  • 怎么解决这个问题,希望得到你们的帮助。挺急的! ``` var idTmr; function getExplorer() { var explorer = window.navigator.userAgent ; //ie if (explorer.indexOf("MSIE") >= 0) { return 'ie'; } //...
  • Excel 技巧百例:数据透视表的排序

    千次阅读 2017-07-27 07:22:59
    数据透视表怎么进行排序呢?...如果我们选择数据,然后复制,新建sheet,选择性粘贴为数值后就可以进行排序,这里介绍一下如何在透视表中直接进行排序。 我们看到学号和姓名的列头后面是有小三角的,例如我们点击学
  • '如下一句是我想象的,我想将thisWorkBook.Sheet1对象复制到temp数组 Redim temp(对象长度) CopyMemory ptr(temp(0)), ptr(sheet1), 对象长度 '如此这般,我就可以将这个对象写入数据库中了 end sub 但...
  • txt与xls代码处理示例 1. 背景 最近因为服务器训练时间不稳定的问题,LZ就想找出具体时间消耗的原因,但是训练平台只能保存成txt,才能下载,于是LZ把所有的数据都...主要显示了怎么使用xlwt建立新的workbook,增加sheet
  • :D urlread获取的源文件貌似不支持中文字符,不知道怎么解决,求交流解决办法。 % 本程序用于获取网站中的表格 % written by longwen36 % all rights reserved clc,clear; warning off; for year = 1991:1992...
  • MAPGIS地质制图工具

    2013-05-06 16:15:30
    若事先未打开Excel,那么将会把选择的表(Sheet)中的所有数据(直到最后为空值行;有空数据行但下面仍有数据行,继续插入数据;有引用公式当做有数据)转到MapGis里面; 2、如果需要把Excel中的线也输入到MapGis中,...

空空如也

空空如也

1 2
收藏数 28
精华内容 11
关键字:

excel怎么复制sheet