ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 创建一位数转换两位数的自定义函数

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-24 01:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
lss001 发表于 2018-12-22 20:16
可以模拟几个数据保留代码,其余数据删除,再上传,或者参考27楼修改代码试试!

恳请老师抽空修改一下http://club.excelhome.net/forum. ... 782&pid=9768943里的参数代码,使之表格按指定间隔序号提取和统计数据。

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-24 08:11 | 显示全部楼层
lss001 发表于 2018-12-22 21:56
只能猜测QUYU可能与excel内置名称冲突!

恳请老师抽空修改一下http://club.excelhome.net/forum. ... 782&pid=9768943里的代码,使之表格按H2指定的条件以间隔序号为周期,进行提取和统计数据。

TA的精华主题

TA的得分主题

发表于 2018-12-24 09:38 来自手机 | 显示全部楼层
这个问题也困扰了我很长时间,终于,找到答案了,论坛里大神多,学习了!

TA的精华主题

TA的得分主题

发表于 2018-12-24 12:16 来自手机 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
WYS67 发表于 2018-12-24 08:11
恳请老师抽空修改一下http://club.excelhome.net/forum. ... 782&pid=9768943里的代码,使之表格按H2指定 ...

有问题务必重新发帖!在论坛不可依赖个別人来解决问题,切记切记!

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-26 14:53 | 显示全部楼层
lss001 发表于 2018-12-22 21:56
只能猜测QUYU可能与excel内置名称冲突!

老师:连发了几个求助帖,都没人能够解决问题。跪求您解决问题:http://club.excelhome.net/thread-1453541-1-1.html修改--按间隔行数进行计数统计,为按间隔序号进行计数统计的代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-27 18:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
lss001 发表于 2018-12-22 20:16
可以模拟几个数据保留代码,其余数据删除,再上传,或者参考27楼修改代码试试!

老师:顿首叩拜,恳请您把http://club.excelhome.net/thread-1453541-1-1.html里的统计条件--以间隔行数为周期,修改为以间隔序号为周期

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-30 01:29 | 显示全部楼层
lss001 发表于 2018-12-22 20:16
可以模拟几个数据保留代码,其余数据删除,再上传,或者参考27楼修改代码试试!

老师:学生顿首拜上!盼望您再帮帮忙,解决http://club.excelhome.net/thread-1453541-1-1.html里改变统计条件的问题。

TA的精华主题

TA的得分主题

发表于 2018-12-30 09:14 来自手机 | 显示全部楼层
本帖最后由 lss001 于 2018-12-30 10:32 编辑

楼上已经说得很明了,切记!
建议有问题重新发帖
帖子中描述文字越少越好
<一二十字把问题说清楚>
附件中模拟数据越少越好
<十个数据足以说明问题>
重新发帖还是无回帖
<可隔二三天另开新帖
记得把标题改一改
内容换一换>
还有就是切记楼上的说明
在论坛不可靠单个人解决问题
必竟个人力量有限
请不要在此浪费时间

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-30 15:23 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
lss001 发表于 2018-12-30 09:14
楼上已经说得很明了,切记!
建议有问题重新发帖
帖子中描述文字越少越好

真诚感谢老师提醒!是我着相了!原本以为代码是老师原创,由老师来修改指定条件要容易得多!看来我是强人所难了!对不起!

  祝老师元旦快乐!

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-6-8 07:20 | 显示全部楼层
lss001 发表于 2018-11-30 17:43
'使用时特别注意→第2参数与第3参数
Function SHUZHEN(rng As Range, y, x)
    Dim ar, b, i

1.gif
把指定范围数字转换成3区余lss001.zip (38.4 KB, 下载次数: 2)

老师:实际应用中,发现27楼的代码存在下面三点问题:

1.当数据源A列的数字小于B2:V2指定的最小值时,就会出现如R5:V5错误;
2.当数据源A列的数字大于B3:V3指定的最大值时,就会出现如M8:V33错误;
3.当B2:V3指定范围内的数据总数不能被3整除时,就会出现P,U列里如粉红色填充的错误

解决的办法是:

1.设置:当数据源数字小于第二参数【即最小值】时,屏蔽错误的计算结果为空;
2.设置:当数据源数字大于第三参数【即最大值】时,屏蔽错误的计算结果为空;
3.改进当B2:V3指定范围内的数据总数不能被3整除时的算法,让计算结果与E,J列相同。

而通用的函数公式为:=IF(OR($A5="",$A5<B$2,$A5>B$3),"",INT(($A5-B$2)*3/(B$3+1-B$2))&MOD($A5,3))  


恳请老师帮忙完善和修改下面的代码为盼。


下面是27楼代码:

Function SQUYU(rng As Range, y, x)
    Dim ar, b, i
    ar = rng: b = Int((x - y + 1) / 3)
    If Not IsArray(ar) Then
        ReDim ar(1 To 1, 1 To 1): ar(1, 1) = rng
    Else: ar = rng
    End If
    For i = 1 To UBound(ar)
        If ar(i, 1) <> "" Then
            If y = 0 Then ar(i, 1) = Int(ar(i, 1) / b) & ar(i, 1) Mod 3
            If y = 1 Then ar(i, 1) = Int((ar(i, 1) - 1) / b) & ar(i, 1) Mod 3
        Else: ar(i, 1) = ""
        End If
    Next
    SQUYU = ar
End Function














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

本版积分规则

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

GMT+8, 2025-1-15 20:40 , Processed in 0.028769 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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