TwitterFacebookRSS
You are here: Home » Cong nghe » Tạo nhiều sheet giống nhau trong microsoft excel

Tạo nhiều sheet giống nhau trong microsoft excel

Giả sử bạn có 1 sheet trong với format đã được định dạng hoàn chỉnh, bạn sẽ dùng sheet đó làm 1 template và bây giờ bạn muốn sao chép template này ra nhiều sheet để thêm các dữ liệu khác biệt cho từng sheet, vậy bạn sẽ làm thế nào?

 

  • Cách 1: Bạn có thể chọn 1 Sheet đó trong Excel sau đó chọn Move or Copy… để copy tạo thành sheet mới tao-nhieu-sheet-giong-nhau-trong-excel-1
  • Cách 2: Giả sử bạn phải thực hiện thao tác sao chép này cho rất nhiều sheet thì bạn sẽ phải thực hiện thao tác trên rất nhiều lần. Để tăng tốc độ thực thi bạn có thể thực hiện theo cách chuẩn bị một với đoạn mã (Visual Basic for Application) và để Excel tự động sao chép các sheets giúp bạn. Chi tiết thực hiện được trình bày ở dưới

Chuẩn hóa sheet Template

Vì bạn sẽ thực hiện sao chép từ sheet Template ra rất nhiều sheets khác, vậy nên trước khi thực hiện việc sao chép bạn hãy kiểm tra lại sheet Template để đảm bảo sheet này đã được chuẩn hóa cả về nội dung và định dạng. Sau khi hoàn tất khâu chuẩn hóa, bạn hãy đặt tên sheet này với 1 tên dễ nhớ, VD: Template.

Định nghĩa tên của các sheet sẽ được copy

Giả sử bạn muốn sao chép nội dung từ sheet Template ra 20 sheet khác với tên được định nghĩa từ Doc1 –> Doc20. Bạn tạo 1 sheet mới tên là Sheet1, trong Sheet1 bạn định nghĩa tên cho các sheets trong cột A như bên dưới

tao-nhieu-sheet-giong-nhau-trong-excel-2

Tạo macro để thực hiện sao chép sheet Template ra nhiều sheet khác nhau

Để bắt đầu tạo Macro bạn nhấn Alt + F8 tại giao diện làm việc Excel, cửa sổ Macro hiện ra, bạn đặt tên cho Macro là copy_multiple_sheets sau đó nhấn Create để tiếp tục

Bạn hãy copy đoạn code sau vào nội dung hàm Sub copy_multiple_sheets()

Sub copySheet2()

Dim rngName As Range

Dim i As Integer

Set rngName = ThisWorkbook.Sheets("Sheet1").Range("a1")

Do Until rngName.Value = ""

i = ThisWorkbook.Sheets.Count

Sheets("Template").Copy After:=Sheets(i)

ThisWorkbook.Sheets(i + 1).Name = rngName.Value

Set rngName = rngName.Offset(1)

Loop

End Sub

Bạn nhấn nút Run trên thanh Toolbar để thực thi hàm copy_multiple_sheets() và tạo ra 20 sheets từ nội dung Template

tao-nhieu-sheet-giong-nhau-trong-excel-4

Bạn có thể download file Excel có chứa các sheets: Sheet1, Template và macro trên tại link sau.

(12,141 viewed)


Chào mừng bạn tới Blog của tôi, nơi chúng ta sẽ cùng sẻ chia những kinh nghiệm về việc xây dựng và phát triển website với Wordpress, kiến thức về Online marketing và ký sự sau mỗi chuyến đi khám phá những miền đất mới lạ.

Did you like this article? Share it below!


Post comment