Devarajan gặp phải tình huống sổ làm việc bị hỏng, nhưng anh ta muốn khôi phục mô-đun macro được liên kết với sổ làm việc. (Các macro thể hiện khá nhiều thời gian phát triển.)

Devarajan tự hỏi làm cách nào để khôi phục được mô-đun.

Phần lớn, câu trả lời phụ thuộc vào việc sổ làm việc bị hỏng như thế nào và vị trí của lỗi nằm trong sổ làm việc. Phần lớn đã được viết về cách khôi phục sổ làm việc bị hỏng; các nguồn sau đây sẽ được quan tâm về vấn đề này:

http://support.microsoft.com/kb/142117 (for Excel 97)

http://support.microsoft.com/kb/179871 (for Excel 2000)

http://support.microsoft.com/kb/820741 (for Excel 2002 and 2003)

http://www.jkp-ads.com/Articles/CorruptFiles.asp

Hầu hết các trang này đề cập cụ thể đến việc khôi phục dữ liệu, không phải khôi phục macro trong mô-đun được liên kết với sổ làm việc. (Thật thú vị là Cơ sở Kiến thức Microsoft không có bất kỳ bài viết nào về cách khôi phục dữ liệu từ sổ làm việc Excel 2007 bị hỏng. Có lẽ điều này sẽ đến với thời gian.) Một điều mà bạn có thể thử để lấy macro của mình là như sau:

  1. Mở Excel, nhưng không mở sổ làm việc có vấn đề.

  2. Đặt chế độ tính toán thành thủ công (Công cụ | Tùy chọn | Tab Tính toán | Thủ công).

  3. Đặt cài đặt bảo mật thành Cao (Công cụ | Macro | Bảo mật | Cao).

  4. Mở sổ làm việc rắc rối. Nếu nó mở thành công, bạn sẽ thấy thông báo rằng các macro đã bị vô hiệu hóa. (Nếu sổ làm việc không mở, thì bạn cũng có thể tắt Excel; loạt bước này sẽ không hoạt động.)

  5. Nhấn Alt + F11 để hiển thị VBA Editor.

  6. Trong Project Explorer, xác định vị trí mô-đun bạn muốn lưu.

  7. Bấm chuột phải vào tên mô-đun và chọn Xuất Tệp.

  8. Cung cấp tên và vị trí lưu mô-đun.

  9. Đóng VBA Editor và thoát khỏi Excel.

  10. Với mô-đun được lưu trong tệp riêng của nó, bây giờ bạn có thể nhập mô-đun đó vào một sổ làm việc khác, như mong muốn.

Một cách khác để cố gắng khôi phục là sử dụng OpenOffice, một giải pháp thay thế miễn phí cho Microsoft Office. Chương trình bảng tính trong OpenOffice sẽ mở các tệp Excel và nó không nhạy cảm với một số vấn đề hỏng hóc.

Nếu điều này vẫn không hiệu quả, hãy thử sử dụng công cụ thao tác tệp cấp thấp cho phép bạn đọc tệp theo từng khu vực từ đĩa, sau đó cho phép bạn xem thông tin trong từng khu vực. Với hầu hết các loại tệp, điều này sẽ không hữu ích lắm. Trên thực tế, nó sẽ không giúp bạn khôi phục bất kỳ dữ liệu nào từ sổ làm việc Excel. Tuy nhiên, khôi phục macro là một câu chuyện khác. Chúng được lưu trữ trong sổ làm việc dưới dạng văn bản ASCII thuần túy, vì vậy bạn sẽ có thể nhận ra mã macro và sau đó sao chép nó từ công cụ đĩa.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (2399) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: