Tạo code thay cho Move or Copy (4 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

satthuvae

Thành viên thường trực
Tham gia
12/3/09
Bài viết
381
Được thích
52
Em chào mọi người.
Em có File excel có nhiều các sheet, trong đó có sheet "CDPS" em sử dụng nhiều nhất, thường hay phải chuyển sheet File này cho nhiều người sử dụng. Và em thường làm thủ công là ấn chuột phải chọn Move or Copy và chọn new book và tiếp chọn Creat a copy và ấn Ok thì sẽ ra một file mới giống hết File này.
Cho em hỏi không biết marco có làm được khi chỉ cần ấn nút ra luôn cái file này được không.
Em gửi File đính kèm, mọi người xem giúp em. Em xin cám ơn ah.
 
Lần chỉnh sửa cuối:
Em xin gửi File đính kèm ah.
 

File đính kèm

Add sub này vào cái CmB bạn vẽ xem. rồi click cái CmB (Command Button.)

Mã:
Sub MoveCopy()
    With ActiveSheet
        Sheets("CDPS").Select
        Sheets("CDPS").Copy
    End With
End Sub
Em cám ơn anh, em đưa vào code nhưng sao không được nhỉ, anh xem giùm em làm sai bước nào a.
 

File đính kèm

Bạn chưa add cái sub vào cái nút ấy làm sao mà click được.
Click phải lên cái nút "Tạo file Excel mới" mà bạn vẻ ấy -> chọn Assign Macro, chọn Sub MoveCopy -> Ok. Xong ra click thử xem

P/s: sửa code trong file bạn lại tí đi: lấy lại code #3 đi.
Cám ơn anh nhiều à. Em đã xử lý được rùi.
 
Làm cái này thành marco được ko bạn?
Rồi dùng phím tắt cho nhanh được ko.
 
Bạn có thể viết 1 cái marco để dùng phím tắt sử dụng cho tất cả các sheet bất kỳ ko bạn?
 
Thì cái trên là Macro chứ gì nữa mà viết.
Nếu dùng cho tất cả các sheet (sao lại tất cả các sheet được.). Mà phải là sheet nào đang được Active ấy. có nghĩa là sheet nào bạn đang làm việc và muốn Copy sheet đó sang 1 file mới.
Thử như vậy xem, tôi mới mò VBA nên chỉ viết được vậy.
Bạn thử add sub này vào module của 1 file excel bất kỳ. Và tạo phím tắt cho nó là Ctrl+shift+C. Sau đó nhấn thử phát có hiệu quả không?
Mã:
Sub CopyMove()
    With ActiveSheets
        Sheets(ActiveSheet.Name).Select
        Sheets(ActiveSheet.Name).Copy
    End With
End Sub
Code này thấy kỳ kỳ sao ấy!
With... End With để làm gì?
Sheets(ActiveSheet.Name).Select có tương đương với ActiveSheet.Select không?
ActiveSheet là sheet ta đang ở, vậy còn Select làm giống gì cho dư?
 
Mình có cái này nữa nhờ bạn giúp.
Giờ mình đang phải dùng đến format pain rất nhiều.
Ngày trc ở bản 2003 mình chỉ việc copy(Ctrl+shift+c), rồi ctrl+shift+v là được.
Nhưng ở bản 2013 này mình ko ctrl+shift+c được.
Bạn nào giúp mình 1 đoạn code để mình làm cái marco làm cho nhanh được ko.
Cảm ơn các bạn!
 
Code này thấy kỳ kỳ sao ấy!
With... End With để làm gì?
Sheets(ActiveSheet.Name).Select có tương đương với ActiveSheet.Select không?
ActiveSheet là sheet ta đang ở, vậy còn Select làm giống gì cho dư?

Các bác cho e hỏi là muốn copy and move cho group sheet thì xử lý code thế nào ạ
Sub CopyMove()
With ActiveSheets
Sheets(ActiveSheet.Name).Select
Sheets(ActiveSheet.Name).Copy
End With End Sub
 
Lần chỉnh sửa cuối:
À các bác cho e hỏi là copy value sheet (giữ nguyên định dạng nhưng tất cả các giá trị trong sheet đều chuyển sang value) thì sửa code thành như này được ko nhỉ :)
Sub CopyMove()
With ActiveSheets
Sheets(ActiveSheet.Name).Select
Sheets(ActiveSheet.Name).CopyValue
End With
End Sub
 
Web KT

Bài viết mới nhất

Back
Top Bottom