Khôi phục dữ liệu
Vị trí trên ribbon: Tab DVD Addin → Nhóm Thông tin → Menu Trợ giúp
ID lệnh: btnRestoreBackup
Chức năng
Lấy lại một sheet từ bản sao lưu add-in tự tạo ngay trước khi bạn chạy một lệnh có thể xoá hoặc ghi đè dữ liệu.
Lý do phải có lệnh này: các lệnh của DVDAddin ghi thẳng vào bảng tính qua giao diện lập trình của Excel, và Excel xoá sạch lịch sử hoàn tác sau mỗi lần bị ghi kiểu đó — Ctrl+Z thông thường của Excel không lấy lại được kết quả của lệnh add-in (không phải lỗi, đó là cách Excel hoạt động với mọi add-in). Từ bản 2.8.4, add-in tự chụp lại sheet trước khi chạy những lệnh nguy hiểm; từ bản kế tiếp, bấm Ctrl+Z ngay sau lệnh là sheet về đúng bản chụp đó (xem mục Ctrl+Z ngay sau lệnh bên dưới). Lệnh này là chỗ lấy lại các bản chụp cũ hơn.
Cách dùng
- Chạy một lệnh có thể xoá/ghi đè (ví dụ Xoá dòng trống). Hộp xác nhận hiện ra với ô Sao lưu sheet "…" trước khi chạy đã tick sẵn — cứ để nguyên rồi bấm Tiếp tục.
- Thấy kết quả không như ý → vào tab DVD Addin → nhóm Thông tin → menu Trợ giúp → Khôi phục dữ liệu.
- Bảng hiện danh sách bản sao lưu, mỗi dòng gồm Thời điểm, Sheet gốc và Lệnh đã chạy — dựa vào tên lệnh để biết bản nào là "trước khi tôi làm hỏng".
- Chọn một dòng rồi bấm một trong hai nút:
- Bung ra sheet mới — tạo thêm một sheet tên
<tên sheet gốc> (phục hồi)ở cuối workbook, sheet hiện tại giữ nguyên. Dùng khi bạn muốn so hai bên trước khi quyết định. - Khôi phục đè lên sheet gốc — thay hẳn sheet hiện tại bằng bản cũ. Trước khi đè, add-in tự chụp thêm một bản của trạng thái hiện tại (ghi là "Trước khi khôi phục"), nên nếu đè nhầm vẫn còn đường quay lại.
- Bung ra sheet mới — tạo thêm một sheet tên
- Xoá hết bản sao lưu dọn sạch mọi bản chụp trong file khi bạn đã chốt kết quả và muốn giảm dung lượng file.
Video hướng dẫn
Khôi phục dữ liệu và Ctrl+Z · 4 phút 20 giây · 13 trường hợp · Tải video · File thực hành theo video
Các chương (17)
- Giới thiệu
- Mở lệnh
- 1 · Hộp xác nhận trước lệnh
- 2 · Ctrl+Z ngay sau lệnh
- 3 · Khi Ctrl+Z hết tác dụng
- 4 · Chạy liền một lệnh nhiều lần
- 5 · Danh sách bản sao lưu
- 6 · Bung ra sheet mới
- 7 · Khôi phục đè lên sheet gốc
- 8 · Sheet đang được tham chiếu
- 9 · Lệnh động tới nhiều sheet
- 10 · Bỏ tích, Đừng hỏi lại
- 11 · Lệnh không sao lưu được
- 12 · Bản sao lưu nằm trong file
- 13 · Giới hạn và Xoá hết
- Mẹo
- Kết thúc
Hướng dẫn bằng hình
Bước 1. Bản sao lưu được tạo khi bạn chạy một lệnh ghi đè hoặc xoá dữ liệu: hộp xác nhận hiện ra với ô Sao lưu sheet … trước khi chạy đã tick sẵn (1) — cứ để nguyên rồi bấm Tiếp tục (2).

Bước 2. Kết quả không như ý và đã lỡ thao tác khác (không còn bấm Ctrl+Z ngay được): trên ribbon, mở tab DVD Addin → nhóm Thông tin → mở Trợ giúp → chọn Khôi phục dữ liệu.

Bước 3. Danh sách (1) liệt kê các bản sao lưu trong file, mới nhất ở trên: thời điểm, sheet gốc và lệnh đã chạy. Chọn bản trước khi làm hỏng, rồi bấm Bung ra sheet mới (2) để so sánh mà giữ nguyên sheet hiện tại, hoặc Khôi phục đè lên sheet gốc (3) để thay hẳn.

Bước 4. Với Bung ra sheet mới, add-in thêm sheet Tiên lượng (phục hồi) ở cuối sổ (1) chứa đúng nội dung lúc trước lệnh, sheet gốc giữ nguyên. Với Khôi phục đè, add-in hỏi lại và tự chụp thêm bản “Trước khi khôi phục” nên vẫn lùi lại được.

Ctrl+Z ngay sau lệnh
Khi lệnh vừa chạy có sao lưu, add-in gắn bản sao lưu vào nút Hoàn tác của Excel: bấm Ctrl+Z (hoặc nút Undo) ngay sau lệnh là sheet về như trước lệnh. Nút Undo ghi tên lệnh và giờ của bản sao, ví dụ Xoá dòng trống (DVD Addin — về lúc 09:42).
- Chỉ dùng được ngay sau lệnh: bạn gõ hay sửa gì khác thì Excel thay mục hoàn tác bằng thao tác mới — khi đó vào Khôi phục dữ liệu như trên.
- Ctrl+Z đi đúng đường Khôi phục đè lên sheet gốc: trạng thái hiện tại được chụp lại trước ("Trước khi khôi phục"), và sheet đang được sheet khác tham chiếu thì từ chối kèm hướng dẫn.
- Lệnh động tới nhiều sheet (xoá nhiều sheet, cắt thép ghi sheet kết quả và sổ tồn kho…) thì Ctrl+Z dựng lại đủ các sheet đó; sheet đã bị xoá được dựng lại đúng tên, ở cuối sổ, theo đúng thứ tự lúc chọn.
- Chạy cùng một lệnh nhiều lần liên tiếp trong 2 phút (ví dụ gộp ô từng cụm) chỉ giữ một bản đầu đợt — Ctrl+Z khi đó đưa sheet về trước cả đợt; giờ ghi trên nút Undo cho biết là lúc nào.
- Lệnh ghi kết quả muộn sau khi chờ mạng (dịch, AI): add-in gắn lại mục hoàn tác sau lần ghi ấy, nên Ctrl+Z ngay khi kết quả hiện ra vẫn đưa sheet về như trước lệnh. Nếu trong lúc chờ bạn đã chạy một lệnh DVD Addin khác thì mục hoàn tác thuộc về lệnh sau — dùng Khôi phục dữ liệu.
Bản sao lưu nằm ở đâu
Trong chính file Excel đó, dưới dạng các sheet ẩn sâu tên _DVDBak1, _DVDBak2… kèm một sheet chỉ mục _DVDBakIdx. Hệ quả thực tế:
- Lưu file rồi đóng, hôm sau mở lại vẫn khôi phục được — bản sao đi theo file.
- Gửi file cho người khác thì bản sao đi theo luôn — người nhận có thể lấy ra dữ liệu cũ bạn đã xoá hay ghi đè. Vì vậy khi bạn Lưu thành (Save As, F12) mà sổ còn bản sao lưu, add-in hỏi có xoá chúng trước khi lưu không (mỗi sổ hỏi một lần trong phiên làm việc; Ctrl+S thường thì không hỏi). Muốn chủ động dọn thì bấm Xoá hết bản sao lưu.
- File nặng thêm, vì mỗi bản là một sheet đầy đủ. Add-in chỉ giữ 5 bản gần nhất và bỏ bản cũ hơn 30 ngày (đổi được ở Tuỳ chọn). Việc dọn chỉ chạy lúc sao lưu bản mới — mở file ra không bao giờ tự xoá gì.
- Excel không hiện các sheet này ở thanh sheet và lệnh Hiện tất cả sheet cũng không lôi chúng ra, nên chúng không làm rối bảng tính.
Bật / tắt và chỉnh
Vào Tuỳ chọn ▸ Bảo vệ dữ liệu:
| Tuỳ chọn | Mặc định | Ý nghĩa |
|---|---|---|
| Hỏi xác nhận trước lệnh có thể xoá hoặc ghi đè dữ liệu | Bật | Tắt đi thì lệnh chạy thẳng, không hỏi |
| Tự sao lưu sheet trước khi chạy những lệnh đó | Bật | Tắt đi thì không còn gì để khôi phục |
| Số bản sao lưu giữ lại | 5 | Để 1 cho file nhẹ; tăng nếu hay phải lần ngược nhiều bước |
| Tự xoá bản sao lưu cũ hơn (ngày) | 30 | 0 = giữ mãi (vẫn trong giới hạn số bản ở trên) |
| Hỏi xoá bản sao lưu khi Lưu thành (Save As) | Bật | Tắt đi thì Lưu thành không hỏi gì |
Lỡ tick "Đừng hỏi lại"
Ô "Đừng hỏi lại" trong hộp xác nhận tắt hẳn lớp hỏi. Bật lại ở Tuỳ chọn ▸ Bảo vệ dữ liệu. Lưu ý khi tắt hỏi, phần sao lưu vẫn chạy ngầm nếu bạn để bật — nên vào đây vẫn có bản để lấy lại.
Lưu ý
- Chỉ sao lưu được sheet trong bảng tính. Những lệnh ghi ra bên ngoài — đổi tên file trên ổ đĩa, xuất PDF, gửi email — không sao lưu được; với các lệnh đó hộp xác nhận vẫn hiện nhưng ô sao lưu bị làm mờ.
- Bản sao chụp cả sheet, không phải chỉ vùng bạn chọn — nên khôi phục đè sẽ trả lại toàn bộ sheet về thời điểm đó, kể cả những thay đổi bạn tự gõ sau lệnh đó.
- Khôi phục đè xoá sheet cũ rồi tạo lại cùng tên. Excel gắn tham chiếu vào chính sheet chứ không vào tên, nên công thức hay ảnh liên kết ở sheet khác trỏ tới sheet này sẽ thành
#REF!và không lấy lại được. Vì vậy khi sheet đang được sheet khác tham chiếu, lệnh từ chối khôi phục đè và nói rõ có bao nhiêu chỗ, ở sheet nào — hãy khôi phục ra sheet mới rồi chép phần cần thiết sang. - Ảnh liên kết (ảnh camera, ví dụ nhãn do Gắn nhãn liên kết tạo) trong bản sao lưu được lưu thành ảnh tĩnh — giữ nguyên hình, bỏ liên kết. Lý do: mỗi ảnh liên kết, kể cả trên sheet ẩn, làm mỗi lần nhấn Enter ở mọi sổ đang mở chậm thêm vài mili giây; năm bản sao của một mặt bằng móng từng làm nhập liệu chậm cả giây. Công thức liên kết được giữ lại trong ảnh, nên khôi phục là liên kết lại như cũ. Bản sao lưu tạo bằng bản trước được tự chuyển ở lần sao lưu kế tiếp, hoặc ngay khi bạn tick ô tương ứng trong hộp thoại Gắn nhãn liên kết.
- Sheet đang bảo vệ (Protect Sheet): hộp xác nhận báo trước rằng ô bị khoá sẽ không ghi được — lệnh có thể dừng giữa chừng, để lại kết quả dở dang. Không báo khi vùng chọn nằm trọn trong ô không khoá (biểu mẫu chừa ô nhập) hoặc khi sheet khoá kiểu "chỉ giao diện" (macro vẫn ghi được). Đã tắt hộp hỏi thì cảnh báo này vẫn hiện riêng.
- Sao lưu không thay cho việc lưu file. Nó chỉ đỡ cho một lệnh vừa chạy sai; sập Excel hay hỏng file thì vẫn cần bản lưu thật.
Liên quan
- Xoá dòng trống và Xoá dòng ẩn — hai lệnh hay phải khôi phục nhất.
- Làm sạch dữ liệu — sửa nội dung hàng loạt trong vùng chọn.
- Tuỳ chọn — nơi bật/tắt lớp hỏi và đặt số bản sao lưu.