Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 6826|回复: 5

[已解决]宏病毒_Xlfn.AVERAGEIF 不能删除,请各位帮助解决!

[复制链接]
发表于 2012-3-22 21:08 | 显示全部楼层 |阅读模式
从公司网上下载一个Excel统计表,计算平均值时,函数 AVERAGEIF  ,自动变为_Xlfn.AVERAGEIF  ,单元格报错,不能计算:

   从VBE中看,有一个FUNCRES.XLAM的文件和一个sheets(RES)的工作表(注:从工作表中查看不到),此文件下有一模块,代码为:
Sub show ATPPDialog(control  As ZRibboncontrol)
    Application.Run("fDialog")
End  sub

Sub GetATPLabel(control As ZRibboncontrol,ByRef label)
    label = Thisworkbook.sheets("RES").Range("A10").Value
End  sub

   将上述两代码删除(或删除此模块),关闭文件,打开文件后,代码又存在,删去不能,用兰版的宏病毒专杀工具,提示删除 _Xlfn.AVERAGEIF  宏病毒后,关闭文件,再打开文件,运行其他代码后,AVERAGEIF 又变为_Xlfn.AVERAGEIF 。
       现打开其他Excel文件,都有 FUNCRES.XLAM的文件 及 模块代码,如何删除!

           请问各位高手帮助解决!                             
                                                                                                              谢谢!
最佳答案
2012-3-22 22:04
本帖最后由 TTTTT 于 2012-3-22 22:06 编辑

AVERAGEIF是在2007/2010版本才出现的函数,2003版本没有该函数,只有AVERAGE函数。
建议2003中改为AVERAGE(if(.....))函数组合,或者使用2007/2010版本的Excel就不用改了。
发表于 2012-3-22 21:18 | 显示全部楼层
这个不是宏病毒吧,那是2007和2010的函数,在2003里不能用而已,所以会显示为_Xlfn.AVERAGEIF !
回复

使用道具 举报

 楼主| 发表于 2012-3-22 21:32 | 显示全部楼层
先将2007另存为2003,将公式中的_Xlfn.AVERAGEIF改为AVERAGEIF,关闭文件,再打开,进行其他代码运行时,还会自动变为 _Xlfn.AVERAGEIF      郁闷
回复

使用道具 举报

发表于 2012-3-22 22:04 | 显示全部楼层    本楼为最佳答案   
本帖最后由 TTTTT 于 2012-3-22 22:06 编辑

AVERAGEIF是在2007/2010版本才出现的函数,2003版本没有该函数,只有AVERAGE函数。
建议2003中改为AVERAGE(if(.....))函数组合,或者使用2007/2010版本的Excel就不用改了。
回复

使用道具 举报

 楼主| 发表于 2012-3-22 22:12 | 显示全部楼层
谢谢楼上各位解答,效果达到    OK
回复

使用道具 举报

发表于 2012-3-22 22:55 | 显示全部楼层
学习中                  
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-5 19:27 , Processed in 0.281753 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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