当前位置 : 主页 > 编程语言 > 小程序开发 >

怎么处理宏病毒(最快解决excel宏病毒的问题)

来源:互联网 收集:自由互联 发布时间:2022-12-31
本人由于工作原因,经常会接收到其它人传来的Excel文件,各种版本都有,从97版本2010版,经常传来的都是被宏病毒感染了的。 但是目前各主流杀毒软件几乎都对宏病毒视而不见,目前

本人由于工作原因,经常会接收到其它人传来的Excel文件,各种版本都有,从97版本2010版,经常传来的都是被宏病毒感染了的。

但是目前各主流杀毒软件几乎都对宏病毒视而不见,目前我还没见过哪个杀毒软件能有效查杀宏病毒。有时候下载的宏病毒专杀工具也无法查杀干净。所以我经常都是手工进行处理,总结了一下手工查杀宏病毒的方法。下面我以2010版Excel为例说说怎么手动查杀。

感染了宏病毒的Excel文件,首先要在菜单的开发工具,Visual Basic 编辑器里查看代码,可以详细看到宏病毒的代码,仔细读下代码就知道它干了些什么,再根据具体情况进行查杀。

怎么处理宏病毒(最快解决excel宏病毒的问题)(1)

宏病毒必做的一件事情就是把自己复制到XLSTART文件夹下面去实现启动Excel时的自启动。我电脑上的路径在:C:\Program Files (x86)\Microsoft Office\Office14\xlstart。这个文件夹下面的文件要删除……

对于有的宏病毒,是用的隐藏宏,还有隐藏的sheet里面,直接通过Visual Basic 编辑器里查看代码是看不到的。这时候就可以用下面的代码在Visual Basic 编辑器里运行一下,把它们显示出来。然后再逐个删除,把病毒代码的模块移除。

怎么处理宏病毒(最快解决excel宏病毒的问题)(2)

Sub xianshi()

Dim n,s '2010以前版本可以不用定义

ForEach n In ActiveWorkbook.Names

n.Visible = True

Next

ForEach s In ActiveWorkbook.Sheets

s.Visible = True

Next

EndSub

有时候通过以上方法把恶意代码删除了,把隐藏的工作表也显示出来删除掉了,但是打开被感染的文件还是显示找不到macro1$A$2,每点一个工作表都弹出来,很是烦人。其实这是原来的宏病毒搞的隐藏的名称,这个在常规状态下打开名称管理器也是无法看到的,无法删除,也需要运行一下以下代码才可以显示,然后打开公式里面的名称管理器删掉就OK了,被感染的文件完美还原。

怎么处理宏病毒(最快解决excel宏病毒的问题)(3)

Sub DisplayNames()

Dim Na As Name

For Each Na In ThisWorkbook.Names

Na.Visible = True

Next

End Sub

宏病毒excel宏病毒问题 【文章转自日本多IP服务器 http://www.558idc.com/japzq.html提供,感恩】
网友评论