永中Office电子表格两行或两列互换宏
2016-02-15 00:00
204 查看
摘要: 用于永中Office电子表格两行或两列互换的宏
/** * 首尾两列互换 * 先将首列复制粘贴到新建的临时工作表中,再将尾列复制到首列上; * 最后将临时工作表的列复制到尾列 */ void ColSwap() { String strTempSheet = "$tmp" + java.lang.System.currentTimeMillis() + "pmt$"; //临时工作表名 Worksheets worksheets = Application.getWorkbooks().getActiveWorkbook().getWorksheets(); Worksheet sheet = worksheets.getActiveWorksheet(); maxColumn = sheet.getMaxDataColumn(); //当前表有数据的最大列范围 maxRow = sheet.getMaxDataRow(); //当前表有数据的最大行范围 Range range = sheet.getActiveRange(); //当前选中范围 startColumn = range.getStartColumn(); endColumn = range.getEndColumn(); if(startColumn == endColumn){ Application.getDialogs().showMessageDialog("只选一列无法进行两列互换哟."); return; } // if(endColumn > maxColumn){ // endColumn =maxColumn; // } startRow = range.getStartRow(); endRow = range.getEndRow(); // if(endRow > maxRow){ // endRow = maxRow; // } //起始列复制粘贴到临时工作表中 range = sheet.getRange(startRow, startColumn, endRow, startColumn); range.copy(); Worksheet tempsheet = worksheets.addWorksheet(strTempSheet); tempsheet.activate(); range = tempsheet.getRange(startRow, startColumn, endRow, startColumn); range.paste(); //终止列复制粘贴到起始列 sheet.activate(); range = sheet.getRange(startRow, endColumn, endRow, endColumn); range.copy(); range = sheet.getRange(startRow, startColumn, endRow, startColumn); range.paste(); //临时表的起始列复制粘贴到表的终止列 tempsheet.activate(); range = tempsheet.getRange(startRow, startColumn, endRow, startColumn); range.copy(); sheet.activate(); range = sheet.getRange(startRow, endColumn, endRow, endColumn); range.paste(); //清剪贴板,删除临时工作表 Application.getClipboard().clear(); worksheets.removeWorksheet(strTempSheet); sheet.activate(); }
相关文章推荐
- 教你使用永中Office版式信息
- Spread Studio for .NET 7发布了,最近有个Spread 7线上发布会
- web版电子表格
- 强大的web电子表格控件dhtmlxSpreadsheet免费下载地址
- 永中Office用户使用中常见问题与解答
- "电子表格"如何导入"网页表格"数据
- 使用 DataGridView 控件建立一个类似电子表格的累计结余接口
- 专业电子表格控件 Aspose.Cells V17.3.0发布
- TableEdit for Mac(电子表格)免激活版 v1.3.0破解版
- 做一个自己的spreadsheet(电子数据表)①继承QTableWidget写自己的表格
- C#使用NPOI读取电子表格Excel到DataGridView中
- Aspose.Cells for .NET命名空间介绍
- wxPython电子表格功能wx.grid实例教程
- OpenTSDB logo开源监控系统 OpenTSDB
- Linux 系统性能优化
- bigdata hadoop 面试问题一
- HDFS
- 学习:APP_ABI
- linux挂载ssd硬盘
- CursorLoader简单使用例子信息查询