方法壹:通過去掉宏自動運行方式刪除。
1、不要打開任何Excel文件。
2、新建壹個文本文檔,重命名為Book1,擴展名刪掉。
3、找到這個文件夾:C:\Documents and Settings\Administrator\Application Data\Microsoft\Excel\XLSTART,如果裏面有壹個Book1文件,替換它。
4、然後打開染毒的Excel文件, 新建壹個表,將內容復制到這個新表中。
方法二:通過程序代碼方式刪除。
新建Book.xls,進入其宏編輯器(Alt+F11),在ThisWorkbook中加入以下代碼:
Private Sub Workbook_Open()
Dim WorkbookInfected As Boolean
Dim ad As Object
Dim strVirusName As String
Dim intVBcomponentNo As Integer
Dim i As Integer
'下面兩句為病毒感染標記及病毒名因為要掃描自己,用"&"連接字符串可以避免誤判自己
'代碼重用時,針對不同的病毒可修改以下兩句
Const Marker = "<- this is another" & " marker!"
strVirusName = "Marker"
While (1)
'If語句部分判斷是否檢查到自己,如果只剩下自己,則退出程序
If ActiveWorkbook.Name = Me.Name Then
ActiveWindow.ActivateNext
If ActiveWorkbook.Name = Me.Name Then GoTo EndRun
End If
'可能存在VB宏代碼處的數目
intVBcomponentNo = ActiveWorkbook.VBProject.VBComponents.Count
For i = 1 To intVBcomponentNo
Set ad = ActiveWorkbook.VBProject.VBComponents.Item(i)
'是否包含特征字符串
WorkbookInfected = ad.CodeModule.Find(Marker, 1, 1, 10000, 10000)
'如果包含特征字符串,則進行去毒處理 If WorkbookInfected = True Then
'如果病毒為追加感染,請修改這壹句.註意這裏為全刪除宏..
ad.CodeModule.DeleteLines 1, ad.CodeModule.CountOfLines
'提示信息
MsgBox ActiveWorkbook.FullName & "被" & strVirusName & _
"宏病毒感染.已去除!", vbInformation, "By:Ray.Deng"
End If
Next
'關閉打開的文件
ActiveWorkbook.Close 1
'切換至下壹個文件.
ActiveWindow.ActivateNext
Wend
EndRun:
End Sub
編好後存盤,然後查找所有*.xls文件,選擇全部(除了剛編的Book.xls:按住Ctrl點擊),點擊鼠標右鍵,"打開(Open)",開啟文件時如果提示是否開啟宏,點擊不開啟宏.然後,打開除了剛編的Book.xls,選擇開啟宏即可.