Phần mềm khác Excel Hướng dẫn lấy danh sách các sheet hiện có trong file Excel

Hướng dẫn lấy danh sách các sheet hiện có trong file Excel

18078
Hướng dẫn lấy danh sách các sheet hiện có trong file Excel

Lấy danh sách tên các Sheet hiện có trong file Excel sẽ giúp cho việc kiểm tra và quản lý các Sheet thuận tiện hơn. Trường hợp file của bạn có ít Sheet thì có thể chưa phát sinh nhiều vấn đề. Nhưng khi số lượng Sheet ngày càng nhiều thì việc theo dõi dữ liệu trong các Sheet sẽ trở nên rất cần thiết. Lấy ra danh sách tên các Sheet là bước đầu để từ đó có thể tạo mục lục cho file Excel của bạn. Hãy theo dõi bài viết sau để biết cách lấy danh sách các sheet hiện có trong file Excel nhé.

1. Cách lấy tên của 1 sheet hiện tại

Để lấy tên của sheet hiện tại, các bạn chỉ cần nhập công thức sau vào ô mà bạn muốn để tên của sheet đó:

=RIGHT(CELL("filename");LEN(CELL("filename"))-FIND("]";CELL("filename")))

2. Cách lấy danh sách các sheet hiện có trong file Excel

Để lấy danh sách các sheet hiện có trong file Excel, đầu tiên thì các bạn cần chọn thẻ Developer trên thanh công cụ. Sau đó các bạn chọn mục Visual Basic. Hoặc các bạn có thể sử dụng tổ hợp phím tắt Alt + F11 để mở cửa sổ VBA.

Lúc này, cửa sổ VBA hiện ra. Các bạn chọn thẻ Insert => Module.

Sau đó các bạn sao chép đoạn code dưới đây vào hộp thoại Module.

Private Sub CreateTableOfContents()
Dim wsSheet As Worksheet
Dim ws As Worksheet
Dim Counter As Long

On Error Resume Next
Set wsSheet = Sheets("Mucluc")
'Kiem tra su ton tai cua Sheet
On Error GoTo 0
If wsSheet Is Nothing Then
'Neu chua co thi them vao vi tri dau tien cua Workbook
Set wsSheet = ActiveWorkbook.Sheets.Add(Before:=Worksheets(1))
wsSheet.Name = "Mucluc"
End If

With wsSheet
.Cells(2, 1) = "DANH SACH CAC SHEET"
.Cells(2, 1).Name = "Index"
.Cells(4, 1).Value = "STT"
.Cells(4, 2).Value = "Ten Sheet"
End With

'Merge Cell
With Range("A2:B2")
.Merge
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With

'Set ColumnWidth
With Columns("A:A")
.ColumnWidth = 8
.HorizontalAlignment = xlCenter
End With

With Range("A4")
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With

Columns("B:B").ColumnWidth = 30
With Range("B4")
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With

Counter = 1
For Each ws In Worksheets
If ws.Name <> wsSheet.Name Then
'Gan gia tri cot thu tu
wsSheet.Cells(Counter + 4, 1).Value = Counter
'Tao lien ket
wsSheet.Hyperlinks.Add Anchor:=wsSheet.Cells(Counter + 4, 2), _
Address:="", _
SubAddress:=ws.Name & "!A1", _
ScreenTip:=ws.Name, _
TextToDisplay:=ws.Name
'Them nut Quay ve Sheet Muc luc tai moi Sheet
With ws
.Hyperlinks.Add Anchor:=.Range("H1"), Address:="", SubAddress:="Index", TextToDisplay:="Quay ve"
End With
Counter = Counter + 1
End If
Next ws
Set xlSheet = Nothing
End Sub

Sau đó các bạn nhấn vào biểu tượng của Run trên thanh công cụ để chạy đoạn code.

Chỉ cần như vậy là một sheet Mục lục mới sẽ tự động được tạo ra vào danh sách các sheet hiện có trong file sẽ được lấy ra tại đây. Các bạn chỉ cần nhấn vào một sheet bất kỳ là trang tính sẽ tự động được chuyển sang sheet đó một cách dễ dàng.

Như vậy, bài viết trên đã hướng dẫn các bạn cách lấy danh sách các sheet hiện có trong file Excel. Hy vọng bài viết trên sẽ hữu ích với các bạn trong quá trình làm việc. Chúc các bạn thành công!

Xem thêm

Cách chèn Hình ảnh vào bảng tính Excel nhanh chóng, đơn giản

Cách tính số ngày ở khách sạn trong Excel: Rất nhanh và đơn giản

Hướng dẫn tính phần trăm thay đổi bằng Pivot Table trong Excel

Cách đơn giản để chia/tách dữ liệu thành nhiều cột trong Excel

Cách sử dụng hàm VLOOKUP lồng vào hàm VLOOKUP trong Excel