ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] JS问答练习帖

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-20 19:29 | 显示全部楼层
问题Q:二维表格转一维表格?
举例1:二维表格转一维表格?

function text(){
        var ss=1;
        for (var rng of Range("b2:e5")){
                        var sth=[].concat(
                                                             Cells(rng.Row,1).Value(),
                                                             Cells(1,rng.Column).Value(),
                                                            rng.Value()
                                              );
                Range("g1:i1").Offset(ss++).Value2=sth;
        }
}

TA的精华主题

TA的得分主题

发表于 2024-8-21 07:21 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我的城市你来过 发表于 2024-8-19 19:57
问题Q:表格颜色清除、2列数据和为0删除整行?
举例1:复制一份表格,进行问题Q操作?(会报错,要多运行几次 ...

image.png

28、复制表格并清除颜色,删除数据和为空整行.zip

15.78 KB, 下载次数: 7

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-24 08:42 | 显示全部楼层
问题Q:数据区域去重合并?
举例1:数据区域去重合并?

function text(){
        var arr=Range("f4:k14").Value();
        var arr1=arr.map(x=>[...new Set(x)]).flat();
        var arr2=[...new Set([...arr1])];
        Range("l4").Resize(arr2.length,1).Value2=arr2.sort((a,b)=>a-b).join("/")
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-24 16:09 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:数据整理?
举例1:将B列带标点符号的数据,转化为行展示?

function text(){
        var lst=Range("a99").End(xlUp).Row;
        var sss=0;
        var arry=Range("a1:d"+lst).Value()
                for (var arr of arry){
                        var newarr=String(arr[1]).split("、").map(v=>[arr[0],v,arr[2],arr[3]]);
                                for (st of newarr){
                                        Range("g1:j1").Offset(sss++).Value2=st
                                }
                }
}

TA的精华主题

TA的得分主题

发表于 2024-8-24 18:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
我的城市你来过 发表于 2024-8-24 08:42
问题Q:数据区域去重合并?
举例1:数据区域去重合并?

let res = [...new Set(rng.Value().flat())].sort((a,b)=>a-b)
rng.Cells(1).Offset(0,rng.Columns.Count).Resize(res.length,1).Value2 = res.map(v=>[v])

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-26 19:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:一数列提取所需要内容,偏移1列填入?
举例1:一数列提取所需要内容,偏移1列填入?

function text(){
                 Range("b2:b99").Clear()
             var arr1=Array.from(Range("a2:a10").Value(),x=>x[0])
             for (var s=0;s<arr1.length;s++){
                       var arr2=arr1[s].match(/(?=\d)[0-9一-龟]+/)
                           Range("b2").Offset(s,0).Value2=arr2
             }
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-27 10:00 | 显示全部楼层
问题Q:去除空格二维表转一维表?
举例1:去除空格二维表转一维表?

function text(){
        Range("g1:i999").Clear()
        Range("g1:i1").Value2=["合骏","线号","数量"];
        var ss=1;
        for (var rng of Range("b2:d25")){
                 if (rng.Value()>0){
                          var sth=[].concat(
                                                                 Cells(rng.Row,1).Value(),
                                                         Cells(1,rng.Column).Value(),
                                                rng.Value());
                Range("g1:i1").Offset(ss++).Value2=sth;
                 }
        }
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-27 14:38 | 显示全部楼层
问题Q:近似匹配取数?
举例1:近似匹配取数?

function text(){
        for (var snt of Range("c7:d10").Value()){
                 if (snt[0].match("路卡工艺品")){
                         Range("k1").Value2=snt[1]
                 }
        }
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-27 19:28 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
问题Q:提取单元格数字?
举例2:提取单元格数字?

function text(){
        var lst=Range("a999").End(xlUp).Row
                Range("b2:b"+lst).Clear()
        var st=Array.from(Range("a2:a"+lst).Value()).flat()
               for (var s=0;s<st.length;s++){
                        var sms=st[s].match(/\d+/)
                    Range("b2").Offset(s,0).Value2=sms
        }
}

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-27 19:30 | 显示全部楼层
问题Q:提取单元格数字?
举例3:提取单元格数字?

function text(){
        Range("b1:b99").Clear()
        var lst=Range("a99").End(xlUp).Row
        for (var s=2;s<=lst;s++){
                      var sll=Range("a"+s).Value().match(/\d+/)
                                    Range("b"+s).Value2=sll
        }
}
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-21 18:28 , Processed in 0.046725 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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