Tạo nút VBA để copy một sheet có sẳn

Liên hệ QC
Hết hiểu luôn rồi. Nếu công thức có liên quan đến Name thì sao?
Cứ thử coi trúng không. Bói hoài.
PHP:
Sub CopySheetToNewWB()
Dim sh As Worksheet, NewFileName, Name As Name
With ThisWorkbook.Sheets(Array("Nhap_diem", "Phieu_diem"))
   .Copy
   With ActiveWorkbook
      For Each sh In .Worksheets
         sh.Protect
      Next
      For Each Name In .Names
         Name.Visible = True
         Name.Delete
      Next
      NewFileName = Application.GetSaveAsFilename
      .SaveAs NewFileName & "xlsx"
      .Close
   End With
End With
End Sub
- Anh Hải ơi Trúng phóc luôn rồi hì hì hì --=0--=0--=0. Rất cảm ơn Anh. Vậy mà em loay hoay mãi.
- chắc chỗ này
Mã:
.SaveAs NewFileName & "xlsx"
Nếu là
Mã:
& "xls"
thì lưu file Excel 2003 phải không anh. Em gửi file cho họ mà họ kêu là gửi file kiểu gì để chẳng mở được file là em nhọc lắm Anh ạ!. Một lần nữa Cảm ơn Anh nhiều!.
 
cho e ké với được không ạ e tạo button nhưng k dc e cũng giống như bạn trên là muốn bấm vào nút để copy sheet đang lm thành 1 sheet mới vì sheet chính luôn thay đổi nội dung nên e muốn lưu lại khi làm dữ liệu mới e gửi file giúp e với nhé.e cảm ơn
 
Cách 1 (Code theo yêu cầu của bạn, và cũng dành cho 1 số tín đồ Excel chuyên dùng phím tắt, mỗi lần đụng đến con chuột rồi click phải copy sheet cảm thấy khó chịu):
Bạn tạo 1 Sub này vào Module

PHP:
Sub mCopyActiveSheet()
ActiveSheet.Copy After:=ActiveSheet
End Sub

Sau đó ra ngoài Excel, mở hộp thoại RunMacro lên, chọn Option và gán phím tắt cho nó (Ví dụ Ctrl+Alt+C).
Như vậy mỗi lần muốn copy 1 sheet hiện hành ra sheet mới, bạn chỉ cần ấn tổ hợp phím Ctrl+alt+C.


Cách 2: Bạn không cần viết code mà dùng phím tắt (Excel có phím tắt mà


Cách 3: Giống anh ndu

Cách 4: Giống TrungChinhs
em làm add được rồi nhưng báo cáo của e theo tháng thì có thể thêm cứ mỗi tháng mình click thì nó tự thay tên được không ạ
 
Tiện thể tôi cũng xin hỏi trong VBA làm sao để copy 1 sheet sang file mới mà chỉ copy nội dung, không copy công thức
 
Tiện thể tôi cũng xin hỏi trong VBA làm sao để copy 1 sheet sang file mới mà chỉ copy nội dung, không copy công thức
Viết chân phương thì kiểu thế này:
Worksheets.Add after:=Sheets(Worksheets.Count) 'Tạo 1 sheet mới
Sheet1.UsedRange.Copy 'Chép vùng dữ liệu đang dùng tại sheet nguồn
Sheets(Worksheets.Count).Range("A1").PasteSpecial xlPasteValues 'Dán giá trị (chỉ nội dung) vào sheet mới tạo, từ A1 trở đi
 
Web KT
Back
Top Bottom