ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南

[分享] JS问答练习帖

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-27 20:39 | 显示全部楼层
问题Q:A列正则提取二段所需数据?
举例1:A列正则提取二段所需数据?

function text(){
        var lst=Range("a999").End(xlUp).Row
                        Range("b1:d"+lst).Clear()
        var arr=Array.from(Range("a1:a"+lst).Value()).flat()
                        for (var s=0;s<arr.length;s++){
        var sxs=arr[s].match(/(?<=新增 )[A-z-0-9]+|(?<=01 G0..       )[A-z-0-9]+/g)
                        Range("b1").Offset(s,0).Resize(1,2).Value2=sxs
        }
}

一列数正则提取2段所需内容.zip

7.9 KB, 下载次数: 12

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-29 19:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:数列提取数字并统一求和?
举例1:数列提取数字并统一求和?

代码1/*function text(){
        Range("b2").Clear()
        var arr=Range("a2:a5").Value().flat();
        var brr=[];sum=0
        for (var ss=0;ss<arr.length;ss++){
                 var st=arr[ss].match(/\d+/gs)
                          var num=eval(st.join("+"))
                          var brr=[...brr,num]
    }Range("b2").Value2=WorksheetFunction.Sum(brr)
}*/

代码2/*function text(){
        Range("b2").Clear()
        var arr=Range("a2:a5").Value().flat();
        var brr=[];sum=0
        for (var ss=0;ss<arr.length;ss++){
                 var st=arr[ss].match(/\d+/gs)
                          var num=eval(st.join("+"))
                          var brr=[...brr,num]
    }brr.forEach(v=> sum+=v);Range("b2").Value2=sum
}*/


用法/*function text1(){
        var sns=[10,20,30];
        var sum=0
        sns.forEach(v=> sum +=v)
        console.log(sum)
}*/

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-31 11:11 | 显示全部楼层
问题Q:求各部门完成进度月并输出结果?
问题1:求各部门完成进度月并输出结果?

function text(){
        Range("n2:n99").Clear()
        var lst=Range("a999").End(xlUp).Row;
        var arr1=Range("b2:m"+lst).Value()
        for (var t=0;t<arr1.length;t++){
                        var arr2=Array.from(arr1[t])
            for (var r=0;r<arr2.length;r++){
                     var ar=[...arr2];
                     ar.length=r
                 var arsum=WorksheetFunction.Sum(ar)
                         if (arsum>=1000){
                                 Range("n2").Offset(t,0).Value2=`${r}月完成+${arsum}业绩`;
                                 break
                         }
        }
        }
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-31 18:28 | 显示全部楼层
问题Q:获取业绩最高人员信息?
举例1:获取业绩最高人员信息?

function text(){
        Range("f2").Clear()
        var lst=Range("a999").End(xlUp).Row
        var fst=WorksheetFunction;
        var brr=[];
        var arr1=Range("b2:e"+lst).Value();
                 for (var s=0;s<arr1.length;s++){
                 brr.push(fst.Sum(arr1[s]))
        }var ms=fst.Max(brr);
         var rs=fst.Match(ms,brr,0)
             Range("f2").Value2="业绩最高者为:"+Cells(1+rs,1).Value()+ms
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-31 19:45 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:获取个人满足条件的成绩信息求和、个数、最高分?
举例1:获取个人满足条件的成绩信息求和、个数、最高分?

function text(){
        var arr1=Range("b2:g7").Value()
        var fst=WorksheetFunction
        var brr=[]
        for (var s=0;s<arr1.length;s++){
                 arr1[s].forEach(x =>{if(x>=100)brr.push(x)})
             var ar=[fst.Sum(brr),
                              fst.CountA(brr),
                              fst.Max(brr)
                         ]
                 brr=[]
                 Range("h2").Offset(s,0).Value2=`求和:${ar[0]};个数:${ar[1]};最大值:${ar[2]}`
        }
}

TA的精华主题

TA的得分主题

发表于 2024-9-1 14:29 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-1 19:45 | 显示全部楼层
问题Q:统计各格式表人员业绩大于400次数?
问题1:统计各格式表人员业绩大于400次数?

代码1/*function text(){
        Sheets("汇总表").Range("a1:b99").Clear();
        var brr=[["姓名","次数"]]
        for (var srt of Sheets){
                 if (srt.Name!="汇总表"){
                          var arr1=srt.Range("b2:b13").Value().filter(v=>v[0]>400)
                          brr.push([srt.Name,arr1.length])
                 }
        }for (var [k,v] of brr.entries()){
                        Sheets("汇总表").Range("a1:b1").Offset(k).Value2=v       
        }
}*/

代码2/*function text(){
        Sheets("汇总表").Range("a1:b99").Clear();
        var brr=[["姓名","次数"]]
        for (var srt of Sheets){
                 if (srt.Name!="汇总表"){
                          var arr1=srt.Range("b2:b13").Value().filter(v=>v[0]>400)
                          brr.push([srt.Name,arr1.length])
                 }
        }for (var k=0;k<brr.length;k++){
                  Sheets("汇总表").Range("a1:b1").Offset(k).Value2=brr[k]
        }
}*/

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-1 20:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:获取各行指定水果的数量,得出各行值及汇总值?
举例1:获取各行指定水果的数量,得出各行值及汇总值?

function text(){
        Range("e2:e99").Clear();Range("f1").Clear();brr=[]
        var arr1=Array.from(Range("d3:d6").Value()).flat()
        for (var [k,v] of arr1.entries()){
//                Console.log(`${v.match(/(?<=槟榔)\d+/)}`)
                var brr=[...brr,v.match(/(?<=槟榔)\d+/)]
                Range("e3").Offset(k).Value2=brr[k]
        }Range("f1").Value2=eval(brr.join("+"))
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-3 16:37 | 显示全部楼层
问题Q:统计数列A字符长度大于0,但排除9的单元格个数?
举例1:统计数列A字符长度大于0,但排除9的单元格个数?

function text(){
        Range("d1:e99").Clear()
        var num=0;
        var lst=Range("a999").End(xlUp).Row
        for (var arr of Range("a1:a"+lst).Value()){
                 var arr1=Array.from(String(arr))
                 var cott=arr1.length;
                 if (cott !=9&&cott>0){
                          num +=arr.length
                 }Range("d1").Value2=WorksheetFunction.Max(num)
        }
}

TA的精华主题

TA的得分主题

发表于 2024-9-3 19:59 | 显示全部楼层
本帖最后由 今铭昔 于 2024-9-3 20:09 编辑
我的城市你来过 发表于 2024-9-3 16:37
问题Q:统计数列A字符长度大于0,但排除9的单元格个数?
举例1:统计数列A字符长度大于0,但排除9的单元格 ...
image.png

评分

2

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-4 01:01 , Processed in 0.053481 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表