2011-08-10 49 views
7

Có cách nào để mã một chức năng hoàn tác trên một CommandButton tương tự như chức năng hoàn tác rất riêng của Excel?Làm thế nào để lập trình mã một chức năng 'hoàn tác' trong Excel-Vba?

Hoặc một chức năng có khả năng gọi phím tắt Ctrl-Z.

+0

Có một trục trặc với điều này, trong khi bạn gọi mã VBA, các undo chồng bị phá hủy (làm cho một bảng tính, đưa một số mặt hàng trên đó, xóa chúng, sau đó gọi bất kỳ mã VBA để xem những gì tôi có ý nghĩa). Tôi không chắc chắn nếu có một cách xung quanh này. Một người dùng khác có một vấn đề tương tự, và tôi nghĩ bạn về cơ bản phải tìm cách viết các thay đổi cho một tệp và đọc lại chúng. – jonsca

+2

Bản sao của: http://stackoverflow.com/questions/339228/building-undo-into-an-excel-vba-macro –

Trả lời

10

Thêm nút lệnh để bảng tính và gán macro sau với nó:

Sub UndoLastAction() 

    With Application 
     .EnableEvents = False 
     .Undo 
     .EnableEvents = True 
    End With 

End Sub 

Nó chỉ có thể hoàn tác hành động cuối cùng được thực hiện bởi người sử dụng và không thể hoàn tác lệnh VBA.

EDIT: Nếu bạn cần thêm undo khả năng nhìn thấy:

Undo With Excel VBA - JKP

Các vấn đề liên quan