Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để tạo nhiều trang tính từ một danh sách các giá trị ô?

Có phương pháp nào nhanh chóng hoặc dễ dàng để chúng tôi tạo nhiều trang tính dựa trên danh sách các giá trị ô trong Excel không? Trong bài viết này, tôi sẽ nói về một số thủ thuật hay để giải quyết công việc này.

Tạo nhiều trang tính từ danh sách các giá trị ô với mã VBA

Tạo nhiều trang tính từ danh sách các giá trị ô với Kutools cho Excel


mũi tên màu xanh bong bóng bên phải Tạo nhiều trang tính từ danh sách các giá trị ô với mã VBA

Để nhanh chóng tạo nhiều trang tính mới được đặt tên bằng danh sách các giá trị ô, mã VBA sau có thể giúp bạn.

1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Mô-đun Cửa sổ.

Mã VBA: Tạo nhiều trang tính từ danh sách các ô:

Sub AddSheets()
'Updateby Extendoffice
    Dim xRg As Excel.Range
    Dim wSh As Excel.Worksheet
    Dim wBk As Excel.Workbook
    Set wSh = ActiveSheet
    Set wBk = ActiveWorkbook
    Application.ScreenUpdating = False
    For Each xRg In wSh.Range("A1:A7")
        With wBk
            .Sheets.Add after:=.Sheets(.Sheets.Count)
            On Error Resume Next
            ActiveSheet.Name = xRg.Value
            If Err.Number = 1004 Then
              Debug.Print xRg.Value & " already used as a sheet name"
            End If
            On Error GoTo 0
        End With
    Next xRg
    Application.ScreenUpdating = True
End Sub

Chú thích: Trong đoạn mã trên, A1: A7 là phạm vi ô mà bạn muốn tạo trang tính dựa trên, vui lòng thay đổi nó theo nhu cầu của bạn.

3. Sau đó nhấn F5 để chạy mã này và các trang tính mới đã được tạo sau tất cả các trang tính trong sổ làm việc hiện tại, xem ảnh chụp màn hình:

doc tạo nhiều trang tính 1


mũi tên màu xanh bong bóng bên phải Tạo nhiều trang tính từ danh sách các giá trị ô với Kutools cho Excel

Nếu bạn không thành thạo với đoạn mã trên, đây là một công cụ hữu ích-Kutools cho Excel, Với khả Tạo Trang tính Trình tự , các trang tính sẽ được tạo dựa trên các giá trị ô trong sổ làm việc mới.

Kutools cho Excel : với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày. 

Sau khi cài đặt Kutools cho Excel, hãy làm như sau:

1. Nhấp chuột Kutools Plus > Bảng > Tạo Trang tính Trình tự, xem ảnh chụp màn hình:

2. Trong Tạo Trang tính Trình tự hộp thoại:

(1.) Chọn một trang tính mà bạn muốn tạo các trang tính trình tự dựa trên;

(2.) Sau đó chọn Ngày trong một tùy chọn phạm vi từ Tên trang tính dựa trên hộp danh sách và nhấp vào doc tạo nhiều trang tính 4 để chọn các giá trị ô mà bạn muốn sử dụng.

doc tạo nhiều trang tính 3

3. Và sau đó nhấp vào Ok , các trang tính đã được tạo với tên của các giá trị ô trong sổ làm việc mới, xem ảnh chụp màn hình:

doc tạo nhiều trang tính 5

Nhấp vào Tải xuống và dùng thử miễn phí Kutools cho Excel ngay!


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (15)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Phiên bản tốt hơn. Thao tác này sẽ xóa trang tính đã tạo nếu tồn tại trang tính khác có cùng tên. Và thêm hộp đầu vào để tránh sửa đổi mã thủ công để chọn phạm vi.


Sub AddSheetsFromCells ()

Dim xRg As Range, wBk As Workbook
Đặt wBk = ActiveWorkbook

Lỗi GoTo Thoát
Đặt dbRange = Application.InputBox ("Phạm vi:", "Chọn phạm vi", _
Application.Selection.Address, Type: = 8)

Application.ScreenUpdating = Sai
Application.DisplayAlerts = Sai

Đối với mỗi xRg Trong dbRange
Với wBk
.Sheets.Add After: =. Sheets (.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = xRg.Value
Nếu Err.Number = 1004 thì
Debug.Print Chr (34) & xRg.Value & Chr (34) & "đã được sử dụng làm tên trang tính"
.ActiveSheet.Delete
Cuối Nếu
Về lỗi GoTo 0
Kết thúc với
XRg tiếp theo

Application.ScreenUpdating = True
Ứng dụng.DisplayAlerts = Đúng
Từ bỏ:

End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này dường như hoạt động tốt cho những gì tôi đang cố gắng thực hiện với một ngoại lệ ... Đó là tạo trang tính trống ... Tôi muốn tạo bản sao của trang tính hiện có cho mỗi hàng trong trang tính khác. Có cách nào để làm điều đó?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều gì sẽ xảy ra nếu tôi muốn mỗi trang tính mới được tạo có một mẫu được dán vào nó từ một trang tính mẫu? Mẫu sẽ chỉ có định dạng và công thức

Cảm ơn
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
tôi cũng cần biết điều này. bạn đã tìm ra?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cập nhật phụMAPs ()
Dim LR As Long, I As Long
Application.ScreenUpdating = Sai
Với Trang tính ("Danh sách Nhóm")
LR = .Range ("E" & Rows.Count) .End (xlUp) .Row
Đối với i = 2 Đến LR
Trang tính ("Bản đồ trống"). Sao chép trước: = Trang tính ("Bản đồ trống")
ActiveSheet.Name = .Range ("E" & i) .Value
Tiếp theo
Kết thúc với
Application.ScreenUpdating = True
End Sub

điều này làm việc cho tôi từ https://www.mrexcel.com/forum/excel-questions/553308-copy-worksheet-rename-cell-value.html
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Thật đáng kinh ngạc! Cảm ơn bạn rất nhiều!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
điều này thật tuyệt vời ...... cảm ơn bạn rất nhiều. Có nơi nào đó có kho lưu trữ công khai cho mã vba không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
và nó tạo ra rất nhiều trang tính ngay cả khi danh sách trống ... điều gì sẽ xảy ra nếu tôi muốn tạo trang tính dựa trên các ô có giá trị?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Lần đầu tiên sử dụng mã VBA trong Excel. Hoạt động hoàn hảo trong lần thử đầu tiên. Cảm ơn vì đã đăng bài này.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này hoạt động tuyệt vời, làm thế nào bạn có thể kết hợp một mẫu vào mỗi tab đã tạo? tức là sao chép và dán từ một mẫu vào mỗi trang tính mới được tạo
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này rất hữu ích. Tôi có thể tiết kiệm rất nhiều thời gian. Cảm ơn bạn rất nhiều vì đã dành thời gian và giúp đỡ chúng tôi với mã tuyệt vời của bạn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đã thử sử dụng mã VBA, nó đang tạo trang tính "không tên", vì vậy sheet1, 2, 3, v.v., thay vì sử dụng giá trị trong ô làm tên của trang tính. Tôi đã cố gắng khắc phục bằng cách thay đổi kiểu dữ liệu trong ô thành văn bản, cùng một vấn đề…


bất kỳ ý tưởng?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đã có vấn đề này. để sửa: 1. chỉ cho phép 31 ký tự cho tên trang tính2. không có ký tự đặc biệt + = () [] \ /,: etc ... tìm và thay thế bằng khoảng trắng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn vì đã đăng tải điều này. Tôi đã làm theo chỉ dẫn và nó hoạt động hoàn hảo.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Et si la liste est mouvante? car si j'ajoute des éléments dois-je tout le temps réadapter le code?
Merci
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL