Excel通过JS宏自定义过滤、查找等操作
2022/9/16 23:47:19
本文主要是介绍Excel通过JS宏自定义过滤、查找等操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Excel通过JS宏自定义过滤、查找等操作
打开宏开发工具
编写JS代码
function myTest() { addSheet() setValue() regFind() deleteSheet() } // 新增sheet function addSheet(name) { var st = Sheets.Add() st.Name = name || "测试" } // 删除sheet function deleteSheet(name) { name = name || "测试" var st = Sheets(name) // Sheets(1) Sheets.Item(1) st.Delete() } // 正则查找整个Excel // 序号都是从1开始 // 如果当前sheet被激活可以直接使用 Cells、Columns、Rows 等 function regFind(sheetName, reg) { var res = [] reg = reg instanceof RegExp ? reg : reg && new RegExp(reg, 'g') || /(\d+)/g //for(var st = 1; st <= Sheets.Count; st++) { var sheet = Sheets(sheetName || '测试'); for(var row = 1; row <= 10; row++) { sheet.Rows(row).Hidden = true for(var col = 1; col <= 10; col++) { var cellValue = sheet.Cells.Item(row, col).Value2 + '' var m = reg.exec(cellValue) while(m) { res.push(m[1]) m = reg.exec(cellValue) } if(reg.test(cellValue)) { sheet.Rows(row).Hidden = false } } } //} alert("查询“" + reg + "”的结果:<br>" + res.join(',')) } // 设置值 // 如果当前sheet被激活可以直接使用 Cells、Columns、Rows 等 function setValue(sheetName) { var st = Sheets(sheetName || '测试'); for(var row = 1; row <= 10; row++) { for(var col = 1; col <= 10; col++) { var v = '测试' if((row + col) % 9 != 0 && row % 2 == 0) { v = row + col } st.Cells.Item(row, col).Value2 = v st.Cells.Item(row, col).Interior.ColorIndex = row + col } } }
运行JS宏
或者
运行效果
这篇关于Excel通过JS宏自定义过滤、查找等操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-30[OIDC in Action] 2. 基于OIDC(OpenID Connect)的SSO(纯JS客户端)
- 2024-03-29terraform jsonencode
- 2024-03-13vuex-persist
- 2024-03-11icons for vue
- 2024-03-07breadcrumbs react js
- 2024-03-06react login page example
- 2024-03-06react router uselocation
- 2024-03-04postgres jsonb_set
- 2024-03-01react native uuid
- 2024-02-29vuejs sidebar