Diệt Macro4, sheet ảo và name rác

DutoanGXD

SmartSoftware
Tham gia
7/7/07
Bài viết
830
Điểm thành tích
93
- Hiện nay có rất nhiều người sử dụng Excel bị virus Macro 4 gây rất nhiều phiền toái. Sau khi tìm kiếm tôi được biết tác giả Đỗ Thành Nhân đã viết 1 chương trình nhỏ bằng VB rất tiện lợi giúp xử lí triệt để những file đã bị nhiễm virus (ví dụ virus HelpMe)
- Tham khảo bài viết đăng trên PCWorld số báo tháng 12/2007 trang 149.

Chương trình quét virus Macro 4 (virus làm hỏng file excel)
Đôi lời của tác giả:
Trong quá trình làm việc tiếp xúc rất nhiều với bảng tính Excel, không riêng gì cá nhân mà nhiều người khác nữa rất khó chịu khi phải chứng kiến sự hoành hành của virus macro 4, trong khi đó các chương trình quét virus hiện nay không giải quyết triệt để được vấn đề này. Xuất phát từ thực tế như vậy, tôi đã xây dựng một chương trình để giải quyết tình trạng trên. Qua tạp chí PC WOLRD tôi xin trình bày bài viết về giải pháp của mình, huy vọng rằng sẽ giải quyết được phần nào thực trạng rác thông tin hiện nay.

Tác giả: Đỗ Thành Nhân
Địa chỉ: 111/1/19 Nguyễn Tự Tân, Tp Quảng Ngãi, tỉnh Quảng Ngãi
Điện thoại: 055.826599, 0913470250
Email: tnc.qng@dng.vnn.vn; dotnhan@gmail.com


Sau đây là hướng dẫn sử dụng
CÁC CHỨC NĂNG KHI SỬ DỤNG CHƯƠNG TRÌNH
Chương trình sử dụng font tiếng Việt là [Tahoma]
- Hộp chọn đĩa và thư mục: chọn ổ đĩa và nhấn chọn thư mục cần quét
- [Sub Dir.]: chọn tất cả các thư mục con trong thư mục được chọn
Xuất hiện danh sách các files Excel chương trình tìm thấy trong [List files clear].
- [Read]: đọc thông tin thuộc tính của file (số sheets, sheet ẩn, macro 4, names, size)
- [Files will clear]: chỉ để lại các file có macro, sheet ẩn, names để kiểm tra trong [List files clear]
- [Open]: mở file xem trên Excel
- [Remove]: gở bỏ file khỏi danh sách, không kiểm tra.
- [Delete]: xóa file đang lưu trữ
- [Backup all files]: lưu dự phòng tất cả các file trong danh sách sẽ kiểm tra [List files clear] vào thư mục [C:\TNAME...\]
- [Show sheets hide delete]: danh sách các sheet ẩn, sheet ảo khai báo xóa khỏi file thể hiện trên [List sheets hide delete in file]
- [diary for clear]: gọi nhật ký quá trình quét file của chương trình
- [uninstall sheet]: gỡ bỏ sheet ẩn, sheet ảo đã khai báo xóa trong [List sheets hide delete in file] (tức là vẫn cho phép các sheet này tồn tại trên file)
- [hide the List]: đóng danh sách [List sheets hide delete in file]
Trước khi thực hiện quét, nên xem xét các chọn lựa sau:
- [All name in file]: quét tất cả names có trong file
- [Name refers ...]: quét tất cả names theo các lớp chọn bên dưới:
+ [to Internet, Email]: quét name tham chiếu trên internet, email
+ [to LAN, WAN]: quét name tham chiếu trên mạng cục bộ
+ [to Database]: quét name tham chiếu đến các database dạng Excel
+ [for you define]: quét name đang kích hoạt, có giá trị
- [One file selected]: chỉ quét cho 1 file đang chọn trên danh sách
- [All file in list box]: chọn quét tất cả các file trong danh sách [List files clear]
Có thể chọn file và xem xét chi tiết các tất cả các sheets và names trên Excel
- [Show list ...]: Hiện tất cả sheet hoặc name trong file được chọn lên danh sách
+ [Name]: Hiện tất cả names trong file được chọn lên danh sách
+ [Sheet and Macro]: Hiện tất cả sheet (sheet chứa thông tin thực, sheet ảo và sheet macro)
* Có thể có sheet macro 4 chương trình ứng dụng cần phải để lại, chức năng này cho phép hiện tất cả các sheet chứa macro 4, có thể chọn xóa hoặc để lại các sheet này.
+ [Delete Name] (hoặc [Delete Sheet and Macro]): Xóa 1 names hoặc 1 sheet trên danh sách (của file chọn trên [List files clear])
+ [Hide list]: Ẩn danh sách sheet / name trong file chọn
Thực hiệu quét file theo các chọn lựa ở trên
- [Scan and Clear]: tiến hành quét file và hiện thông tin lên màn hình
Sau mỗi lần thực hiện quét xong, có thể:
- [Print (to Excel)]: chuyển kết quả qua Excel để xem, in, lưu trữ tùy ý (In kết quả quét, hoặc in danh sách sheet khai báo xóa, hoặc in nhật ký quét file)
- [Close programe]: Đóng chương trình và chấm dứt công việc.
Đỗ Thành Nhân

Rất mong nhận được sự góp ý chân thành từ người sử dụng.
Nếu có files bị macro 4 mà chương trình không quét được, vui lòng gửi file cho tác giả theo địa chỉ: tnc.qng@dng.vnn.vn
Xin cám ơn.

Click vào đây để load
 

File đính kèm

  • Macro4Scan.rar
    53,1 KB · Đọc: 2.024
Last edited by a moderator:

nguyentheanh

Tác giả Dự toán GXD
Thành viên BQT
Tham gia
6/7/07
Bài viết
4.642
Điểm thành tích
113
Website
giaxaydung.vn
Xin chân thành cảm ơn tác giả Đỗ Thành Nhân. Đây là tin cực vui cho những ai làm bạn với màn hình Excel hàng ngày, đặc biệt là với dân tư vấn, nhà thầu, chủ đầu tư, nhà quản lý... hàng ngày phải làm việc với các file dự toán, file bảng tính, file tính đơn giá dự thầu. Virus này tạo ra sự khó chịu cho người làm việc mỗi khi đóng mở file, chuyển đổi sheet làm việc và tạo ra một file dữ liệu cực nặng do tạo ra các name ảo... Bản thân TA có những lúc phải ngồi hàng giờ, một tay kích chuột, một tay Alt + D thao tác liên hồi mới xóa hết được các name ảo để làm nhẹ file bảng tính của mình (nhưng rồi có thể lại nhiễm lại bất kỳ lúc nào). Ngay cả các file đơn giá của SMOD Đào Vũ Chinh cũng còn rất nhiều name ảo, gây nặng dữ liệu đơn giá và cũng là một nguyên nhân hao tổn tài nguyên băng thông cho Giaxaydung và nhiều nguy hại khác như một số thành viên Giaxaydung đã đề cập.
Các thành viên, tổ chức, cá nhân sử dụng chương trình này thấy hiệu quả xin viết email cảm ơn tác giả chương trình.
Nhân đây cũng xin chân thành cảm ơn SMOD Z@p về bài viết này, thông tin này cực quý giúp giảm nhiều công sức và thời gian cho mọi người.
 
Last edited by a moderator:
A

anhsonbc75

Guest
Tiện ích xoá name thừa làm giảm dung lượng file Excel

Chương trình làm gọn file exel. các bạn dùng thử. Chương trình xóa bỏ các name không cần thiết
 

File đính kèm

  • don file exel.zip
    59,5 KB · Đọc: 1.194
Last edited by a moderator:
3

3077

Guest
Không biết có mấy bác tải về dùng thử thế nào, cho ý kiến đi chứ ạ để ng sau còn dám dùng :p
 

Đinh Tấn Linh

Quản trị cấp cao
Tham gia
21/11/07
Bài viết
1.515
Điểm thành tích
113
Nơi ở
Cư M'gar - Đắk Lắk
Không biết có mấy bác tải về dùng thử thế nào, cho ý kiến đi chứ ạ để ng sau còn dám dùng :p

Thử tải về rồi!

Nhưng khi dùng, mình chọn đường dẫn đến file excel thì bị báo lỗi và chương trình tự thoát ra!

Không biết có ai bị sự cố như mình không?
 

TuvanXD246

Cựu Thành viên BQL Diễn đàn
Tham gia
4/3/08
Bài viết
751
Điểm thành tích
43
Website
giaxaydung.vn
Không biết có mấy bác tải về dùng thử thế nào, cho ý kiến đi chứ ạ để ng sau còn dám dùng :p
Cái này đưa lên diễn đàn lâu lắm rồi. Nay lại có bạn tải lên. Mình cũng thử tải về và thấy dùng vẫn bình thường đấy chứ tanlinh? Cái này phải nói là hay vì có thể phát hiện các sheet ẩn, có dấu hiệu của virus. Các bạn nên trang bị bảo vệ cho các file của mình.
 
3

3077

Guest
Em dùng cái này quýet file dự toán của em, sheet nào ẩn nó đều đòi xóa hết mặc dù nó là sheet Dự thầu - Đơn giá chi tiết, .... do phần mềm Dự toán chạy ra
 

Diệp Thanh

Thành viên rất năng động
Tham gia
16/5/08
Bài viết
116
Điểm thành tích
18
Em dùng cái này quýet file dự toán của em, sheet nào ẩn nó đều đòi xóa hết mặc dù nó là sheet Dự thầu - Đơn giá chi tiết, .... do phần mềm Dự toán chạy ra

Mình thấy ai dùng dự toán 2007 thì k nên dùng phần mềm này ạ. Hic. Tớ vừa bị mất file một cách đau thương đây. :((
 

TuvanXD246

Cựu Thành viên BQL Diễn đàn
Tham gia
4/3/08
Bài viết
751
Điểm thành tích
43
Website
giaxaydung.vn
Chương trình diệt cũng như thuốc chữa bệnh vậy. Trước khi sử dụng nên đọc kỹ hướng dẫn! Các chương trình diệt virus macro các bạn nên đặt chế độ "hỏi trước khi diệt" để tránh việc hiểu nhầm các macro của chương trình. Tuy việc này hạn chế tốc độ quét nhưng bù lại là an toàn chi dữ liệu của bạn.
 

Diệp Thanh

Thành viên rất năng động
Tham gia
16/5/08
Bài viết
116
Điểm thành tích
18
Chương trình diệt cũng như thuốc chữa bệnh vậy. Trước khi sử dụng nên đọc kỹ hướng dẫn! Các chương trình diệt virus macro các bạn nên đặt chế độ "hỏi trước khi diệt" để tránh việc hiểu nhầm các macro của chương trình. Tuy việc này hạn chế tốc độ quét nhưng bù lại là an toàn chi dữ liệu của bạn.

Nói như bạn thì dùng thuốc mà bị bệnh thêm là do không đọc kỹ hướng dẫn à? :p

Mình thấy dùng cái phần mềm này vẫn chả sạch được, có khi name cần giữ thì nó xoá, name không cần giữ thì k thể xoá được.

Trên diễn đàn này rất nhiều người dùng phần mềm dự toán. Thiết nghĩ trước khi đưa một phần mềm mà khi dùng mất nhiều hơn được lên đây thì các mod cũng cần cân nhắc và có cảnh báo rõ ràng.
 

DutoanGXD

SmartSoftware
Tham gia
7/7/07
Bài viết
830
Điểm thành tích
93
Trên diễn đàn này rất nhiều người dùng phần mềm dự toán. Thiết nghĩ trước khi đưa một phần mềm mà khi dùng mất nhiều hơn được lên đây thì các mod cũng cần cân nhắc và có cảnh báo rõ ràng.
-Có lẽ vì bạn bị mất file nên khá bức xúc, còn mình sử dụng chương trình này và thấy nó rất hiệu quả.
- Từ đầu bài viết mình có ghi rõ nguồn tham khảo: Tạp chí vi tính số tháng 12 năm 2007 trang 149. Và dưới đây là đường link của báo PCworldvn điện tử. Bạn có thể tham khảo thêm. Dù sao thì báo Pcworld cũng là tờ báo có uy tín.
http://www.pcworld.com.vn/pcworld/magazine_a.asp?t=mzdetail&atcl_id=5f5e5d5d5f5957
- Trường hợp của bạn bạn có thể liên lạc với tác giả chương trình để tác giả giúp đỡ, hoặc nâng cấp chương trình, hoặc fix lỗi ...
 
3

3077

Guest
Nói như bạn thì dùng thuốc mà bị bệnh thêm là do không đọc kỹ hướng dẫn à? :p

Mình thấy dùng cái phần mềm này vẫn chả sạch được, có khi name cần giữ thì nó xoá, name không cần giữ thì k thể xoá được.

Trên diễn đàn này rất nhiều người dùng phần mềm dự toán. Thiết nghĩ trước khi đưa một phần mềm mà khi dùng mất nhiều hơn được lên đây thì các mod cũng cần cân nhắc và có cảnh báo rõ ràng.

Thì trước khi xóa nó đã hỏi anh có Yes hay kô chứ có pải âm thầm thịt luôn đâu. Hơn nữa chỉ khi nào file đó có dấu hiệu virus (mở file nó tự tạo hàng loạt sheet) thì mới quyét chứ file lành lặn thì quét làm gì.
 

emyeuanhkiemtoan

Thành viên rất triển vọng
Tham gia
1/1/08
Bài viết
29
Điểm thành tích
6
Thử tải về rồi!

Nhưng khi dùng, mình chọn đường dẫn đến file excel thì bị báo lỗi và chương trình tự thoát ra!

Không biết có ai bị sự cố như mình không?

Chắc file của bác đặt tên có dấu rùi, bác bỏ dấu đi là uki thui.
Em vừa quét file (sử dụng chức năng Scan and clear) nhưng quét xong thì các name rác vẫn còn nguyên. Các bác giúp em với ạ.
P/S: Chương trình này rất hay đấy, em cũng đang rất cần
 

emyeuanhkiemtoan

Thành viên rất triển vọng
Tham gia
1/1/08
Bài viết
29
Điểm thành tích
6
Em vừa quét 1 file có 7000 name rác nhưng chương trình này ko xóa được 1 name nào cả :((
 

Linhwru89

Thành viên rất triển vọng
Tham gia
8/10/10
Bài viết
30
Điểm thành tích
8
Tuổi
35
tình hình là em vừa tải về kích cái xuất hiện ngay lỗi Bad file number
 

nguyentheanh

Tác giả Dự toán GXD
Thành viên BQT
Tham gia
6/7/07
Bài viết
4.642
Điểm thành tích
113
Website
giaxaydung.vn
tình hình là em vừa tải về kích cái xuất hiện ngay lỗi Bad file number
Nếu có thể, bạn dùng Excel 2007 (hoặc 2010) trên menu Formulas chọn lệnh Name Manager bạn có thể chọn xóa hàng loạt những Name ảo, Name lỗi. Đây là một trong những điều rất hay của Excel 2007 dành cho dân xây dựng (tư vấn, nhà thầu, chủ đầu tư...) vì nạn Name rác, Name ảo gây nặng file, làm bảng tính xử lý rất chậm.
Excel 2003 không làm được điều trên mà phải xóa từng Name :((. Từ khi dùng Excel 2007 các file của tôi cực nhẹ và cực sạch.
 

thangcola113

Thành viên rất nhiệt tình
Tham gia
6/1/10
Bài viết
268
Điểm thành tích
43
Tiện ích diệt name rác bằng code trong excell:(Nhanh và rất nhẹ nhàng, giảm dung lượng file nhiều lần)

Hiện tượng:
Trong Excel, vào Insert/Name thấy một đống name rác.
Cách diệt:
- Bước 1: Mở file excel bị nhiễm virus
- Bước 2: Tạo module mới bằng cách bấm Alt+F11 để vào cửa sổ soạn thảo visual basic, sau đó vào
Insert/Module
- Bước 3: Dán đoạn code sau vào module mới tạo

Sub DeleteErrName()
On Error Resume Next
Dim NSh As Name, i As Integer
Dim OldStatus As Boolean, ThongBao As String
OldStatus = Application.DisplayStatusBar
Sheets.Add.Name = "ShName"
For Each NSh In ActiveWorkbook.Names
If InStr(1, NSh.RefersToR1C1, "#") > 0 Or _
InStr(1, NSh.RefersToR1C1, "\") > 0 Then
i = i + 1
Application.StatusBar = "Deleted : " & Format(i, "#,##0") & _
" Deleting...: " & NSh.Name
Sheets("ShName").Range("A" & i).Value = NSh.Name
Sheets("ShName").Range("B" & i).Value = " " & NSh.RefersToR1C1
NSh.Delete
End If
Next
If i > 0 Then _
ThongBao = ThongBao & Chr(13) & Chr(13) & " -" & Format(i, "#,##0") & " Names da xoa"

MsgBox ThongBao, vbInformation, "GPE"


Application.StatusBar = ""
Application.DisplayStatusBar = OldStatus
End Sub

- Bước 4: Bấm Ctrl+S để ghi lại
- Bước 5: Bấm F5 để chạy Macro vừa tạo - BOOM! virus die.
 

Top