ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 绩效量化计算

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-26 21:28 | 显示全部楼层
本帖最后由 divineson 于 2024-10-27 00:43 编辑
shiruiqiang 发表于 2024-10-22 18:39
中间说过,表2和表5相互作用太多。
先把表2的数据清空,代码运行不下去的。
建议第一步先把a-j列的数据写 ...


老师你好,万分抱歉,隔了这么多天才来回复,实在是感冒太严重了,感觉应该是阳了,全身都酸痛无力,称着今晚精神还可以就马上来看老师的回复了。万分感谢老师无私的帮助和指导。当时上传的文件有按老师说的重新起了模块编写排名,但出来的效果完全是乱的,应该是自己对于这一块的逻辑还没能搞明白,最后还是老师出马才搞点了。现在自己在模块2中又编号了一段O列的代码,感觉后续列的代码应该都此续编,但是代码还是没成功,还是需要老师指导一下哪出问题了,谢谢!

代码达成的需求如下:
1.优先条件M列小于下列数值时按要求扣分
2.如M列未出现下列数值则检测L列,如有大于等1的情况则N列与表5 J列的排名进行匹配,再与岗位(表5,K-M列)匹配对应的得分,如L列小于1的统一计为0分。
'O列
If arr(i, 13) < 0.3 Then
    arr(i, 15) = -7.5
    ElseIf arr(i, 13) < 0.4 Then
    arr(i, 15) = -6
    ElseIf arr(i, 13) < 0.5 Then
    arr(i, 15) = -5
    ElseIf arr(i, 13) < 0.6 Then
    arr(i, 15) = -4
    ElseIf arr(i, 13) < 0.7 Then
    arr(i, 15) = -3
    ElseIf arr(i, 13) < 0.8 Then
    arr(i, 15) = -2
    ElseIf arr(i, 13) < 0.9 Then
    arr(i, 15) = -1
    End If
这一段一运行就报错了,下标越界9,不太懂什么意思,是不是该列有空格所以显示出错了。

drr = Sheets(5).UsedRange
For i = 2 To UBound(drr)
arr(i, 14) = drr(i, 10)
If arr(i, 12) >= 1 And arr(i, 5) = "值班站长" Then
arr(i, 15) = drr(i, 11)
ElseIf arr(i, 12) >= 1 And arr(i, 5) = "值班员" Then
arr(i, 15) = drr(i, 12)
ElseIf arr(i, 12) >= 1 And arr(i, 5) = "站务员" Then
arr(i, 15) = drr(i, 13)
Else
arr(i, 15) = 0
End If
Next

单独运行这一段没有报错,但是也没有任何显示,水平不足,找不出其中的原因,麻烦老师再看看,指导一下,万分感谢!

绩效量化计算10.26.zip

194.93 KB, 下载次数: 0

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-26 21:38 | 显示全部楼层
chxw68 发表于 2024-10-22 20:44
楼主的要求挺复杂,只凭楼主的说明很难理解,主要是参照楼上网友代码理解的。纯属练习。

感谢老师的关注,应该是我表达的不太清晰,这个表所需的代码基本都由公式演变而来,我的理解是基本都是表与表之间的配对计算,只是涉及的表比较多,很多列所使用的都是类似VLOOKUP的功能,对于各位老师们来说只要明白了需求都能实现到相应的功能!

TA的精华主题

TA的得分主题

发表于 2024-10-27 10:33 | 显示全部楼层
今天才发现没有把文件发上来。

绩效量化计算10.18.rar

221.91 KB, 下载次数: 7

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-27 14:41 | 显示全部楼层
chxw68 发表于 2024-10-27 10:33
今天才发现没有把文件发上来。

感谢老师的关注,测试了一下,有以下几个问题麻烦老师帮忙调整一下:
1、当表2清空后,读取数据只读取到65行就结束了,数据不完整,因每月的人数可能都不太一样,所以读取表3时不能写成固定行,需将边界定在“班表说明”上方的单元格或行;
2、表2中F列、G列、J列运算后空格的都补上0
3、K列除了“值班站长、值班员、站务员”这三个岗位需匹配得分外,其他岗位一律赋上“该岗位不参评”,但N列的排名还是按规则在各自的岗位进行排名。
另外,还想请老师看看41楼提出的问题能否帮忙一并解决了,还有表2R列的最终得分列公式功能描述是:Q列=0时,取O列的值,否则取Q列的值,这个VBA语句是学会了,但老师的代码还没看明白,不知道要加在哪个位置,麻烦老师指导一下,万分感谢!

TA的精华主题

TA的得分主题

发表于 2024-10-27 17:30 | 显示全部楼层
修改好了,结果不一定正确。

绩效量化计算10.18.rar

228.64 KB, 下载次数: 7

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-27 22:42 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
chxw68 发表于 2024-10-27 17:30
修改好了,结果不一定正确。

万分感谢老师的帮忙,基本功能基本已全部实现,本想参照老师的代码把剩下的需求进行完善,但编写后进行测试中,没有报错,但结果也没有显示出来,还是空白的单元格,还是需要老师的指导,情况如下:
1、表2H列”不参评“在O列同步显示”不参评“,K列”该岗位不参评“在O列中计0分即可,现在是按-7.5分算,会影响员工绩效,我用了IF语句,但不知为什么不生效。
2、U列的最终排名是以E列的岗位和T列的最终得分进行排名,参考老师N列的代码,把参数也调整了,但也是运行后没有显示。
3、V列的档次匹配是以E列的岗位和U列的最终名次匹配表6的R到U列,其中需增加的条件有:
1)表2H列”不参评“在V列同步显示”不参评“,K列”该岗位不参评“在V列显示空格
2)M列小于70%的直接评为”D“,大于等于70%的增加检测F列如有大于5的评为C,如这两个条件都不满足的则按规则在表6进行档次的匹配;对于表6的匹配也尝试参照表5的代码,同样没有成功。
麻烦老师再费心看看,谢谢老师!

TA的精华主题

TA的得分主题

发表于 2024-10-28 07:53 | 显示全部楼层
本帖最后由 shiruiqiang 于 2024-10-28 07:57 编辑

1、表2H列”不参评“在O列同步显示”不参评“,K列”该岗位不参评“在O列中计0分即可,现在是按-7.5分算,会影响员工绩效,我用了IF语句,但不知为什么不生效。

image.jpg
test3中加入5句:
image.jpg



TA的精华主题

TA的得分主题

发表于 2024-10-28 08:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 shiruiqiang 于 2024-10-28 08:15 编辑

几点后面也就基本判断,第3点的位置大概也在这里
image.jpg
image.jpg

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-10-28 09:47 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
修改好了。

绩效量化计算10.18.rar

231.72 KB, 下载次数: 7

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-28 10:05 | 显示全部楼层
shiruiqiang 发表于 2024-10-28 08:03
几点后面也就基本判断,第3点的位置大概也在这里

感谢老师的指导,关于追加C的判断,不知道是不是我写的位置不对还是语句有问题,增加了语句后能正常运行,但是对于表2的F列天数大于5的,判断条件满足后将O列的得分删除了,使月度的最终得分减少了5分,虽然对本月评档次没有问题,但年度绩效还是会累计每月的评分,这对个人是有影响的,麻烦老师再指导一下,万分感谢!
1.png
2.png
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-21 16:48 , Processed in 0.045118 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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