Thời gian đọc ước tính: 12 phút
Những điểm chính
- Tự động hóa: Sử dụng hàm Excel giúp tên sheet tự động cập nhật trong ô tính khi bạn thay đổi tên thẻ (tab) phía dưới.
- Hàm cốt lõi: Hàm
CELL("filename")là nền tảng để lấy đường dẫn tệp tin đầy đủ. - Kết hợp hàm: Sử dụng kết hợp
RIGHT,LEN,FINDhoặcMIDđể trích xuất riêng phần tên sheet từ đường dẫn đầy đủ. - Lưu ý quan trọng: File Excel phải được lưu (Save) ít nhất một lần để hàm hoạt động chính xác.
- Ứng dụng: Thích hợp để tạo tiêu đề báo cáo động, dashboard tài chính và quản lý dữ liệu tự động.
Khi làm việc với các bảng tính Excel phức tạp, việc hiển thị tên worksheet (trang tính) ngay trên giao diện báo cáo là nhu cầu rất phổ biến. Thông thường, nhiều người dùng có thói quen nhập thủ công tên sheet vào một ô tiêu đề. Tuy nhiên, cách làm này có một nhược điểm lớn: nếu bạn đổi tên sheet từ “Tháng 1” sang “Tháng 2”, nội dung trong ô tiêu đề sẽ không tự thay đổi theo. Bạn buộc phải nhập lại, dẫn đến tốn thời gian và dễ sai sót.
Giải pháp tối ưu nhất là sử dụng công thức để Excel tự động lấy tên sheet hiện hành. Khi tên sheet thay đổi, công thức sẽ tự động cập nhật kết quả mới.
Trong bài viết hướng dẫn này, chúng tôi sẽ đi sâu vào cách sử dụng các hàm xử lý chuỗi kết hợp với hàm thông tin để trích xuất tên sheet một cách chính xác nhất.
Sử dụng hàm CELL để lấy thông tin tệp tin
Bước đầu tiên và quan trọng nhất trong quy trình này là sử dụng hàm CELL. Đây là một hàm thuộc nhóm Information (Thông tin) trong Excel, cho phép bạn truy xuất các dữ liệu về định dạng, vị trí hoặc nội dung của một ô cụ thể.
Hàm này có khả năng trả về đường dẫn đầy đủ của tệp tin Excel mà bạn đang thao tác, bao gồm cả đường dẫn thư mục, tên file và tên sheet.
Giả sử bạn đang làm việc trên một file Excel và sheet hiện tại có tên là “Sales Data” (Dữ liệu bán hàng).
Bạn hãy nhập công thức sau vào bất kỳ ô nào trong sheet:
=CELL("filename")
Công thức CELL để lấy tên workbook và địa chỉ đầy đủ
Kết quả trả về sẽ là một chuỗi văn bản dài chứa đường dẫn đầy đủ, ví dụ:C:UsersAdminDocuments[Báo_Cáo_2024.xlsx]Sales Data
Phân tích cấu trúc kết quả:
- Đường dẫn thư mục:
C:UsersAdminDocuments - Tên file (Workbook):
[Báo_Cáo_2024.xlsx](luôn nằm trong ngoặc vuông). - Tên sheet:
Sales Data(nằm cuối cùng, ngay sau dấu ngoặc vuông đóng]).
Mục tiêu của chúng ta là chỉ lấy phần văn bản nằm sau dấu ]. Để làm được điều này, chúng ta cần kết hợp CELL với các hàm xử lý văn bản như RIGHT, LEN, FIND hoặc MID.
Phương pháp 1: Kết hợp hàm RIGHT, LEN và FIND
Đây là phương pháp phổ biến và hoạt động ổn định trên hầu hết các phiên bản Excel. Tư duy logic của công thức này như sau:
- Lấy toàn bộ đường dẫn.
- Tìm vị trí của dấu đóng ngoặc vuông
]. - Tính độ dài của tên sheet bằng cách lấy tổng độ dài chuỗi trừ đi vị trí của dấu
]. - Cắt lấy các ký tự bên phải tương ứng với độ dài vừa tính được.
Công thức hoàn chỉnh:
=RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))
Công thức để lấy tên sheet bằng hàm RIGHT
Giải thích chi tiết cơ chế hoạt động
Để bạn hiểu rõ bản chất và dễ dàng sửa lỗi nếu có, hãy cùng phân tích từng thành phần của công thức trên:
CELL("filename"): Trả về chuỗi đường dẫn đầy đủ:Đường_dẫn[Tên_file]Tên_sheet.FIND("]", CELL("filename")): HàmFINDsẽ dò tìm vị trí của ký tự]trong chuỗi đường dẫn. Kết quả trả về là một con số, ví dụ là 50 (nghĩa là dấu]nằm ở ký tự thứ 50). Đây là mốc ranh giới phân chia giữa tên file và tên sheet.LEN(CELL("filename")): HàmLENđếm tổng số ký tự của cả chuỗi đường dẫn. Giả sử tổng độ dài là 60 ký tự.- Phép trừ
LEN - FIND: Lấy 60 – 50 = 10. Số 10 này chính là độ dài của tên sheet (“Sales Data” có 10 ký tự bao gồm khoảng trắng). RIGHT(Chuỗi_gốc, 10): HàmRIGHTsẽ lấy 10 ký tự tính từ bên phải sang, chính là phần tên sheet mà chúng ta cần.
Ưu điểm lớn nhất của công thức này là tính tự động hóa cao. Bạn có thể đổi tên sheet thành bất cứ thứ gì, công thức cũng sẽ tự động tính toán lại độ dài và hiển thị tên mới ngay lập tức.
Lưu ý kỹ thuật: Hàm CELL chỉ hoạt động nếu workbook (file Excel) đã được lưu (Save) vào ổ cứng. Nếu bạn mở một file mới tinh (Book1) và chưa lưu lần nào, hàm CELL("filename") sẽ trả về kết quả rỗng, dẫn đến công thức bị lỗi #VALUE!.
Vấn đề về tính biến động (Volatility) của hàm CELL
Một đặc điểm kỹ thuật cần lưu ý là hàm CELL không có tham chiếu ô cụ thể (như CELL("filename", A1)) sẽ trả về thông tin của sheet đang hoạt động (Active Sheet).
Điều này có nghĩa là:
Nếu bạn có công thức này ở Sheet 1, nhưng bạn chuyển sang Sheet 2 và nhấn F9 (tính toán lại), công thức ở Sheet 1 có thể hiển thị tên của Sheet 2.
Để khắc phục và “ghim” công thức cho đúng sheet hiện tại, bạn nên thêm tham chiếu đến một ô bất kỳ trong sheet đó, ví dụ ô A1:
=RIGHT(CELL("filename", A1),LEN(CELL("filename", A1))-FIND("]",CELL("filename", A1)))
Việc thêm A1 giúp Excel hiểu rằng bạn muốn lấy thông tin file của sheet chứa ô A1 đó, giúp kết quả ổn định hơn.
Phương pháp 2: Sử dụng hàm MID (Thay thế cho RIGHT)
Ngoài cách dùng hàm RIGHT, bạn cũng có thể sử dụng hàm MID. Cách này đôi khi dễ tư duy hơn: “Bắt đầu lấy ký tự từ sau dấu ngoặc vuông cho đến hết”.
Công thức sử dụng hàm MID:
=MID(CELL("filename"),FIND("]",CELL("filename"))+1,31)
Phân tích logic của hàm MID
FIND("]", CELL("filename")) + 1: Tìm vị trí dấu]và cộng thêm 1. Đây chính là vị trí bắt đầu của ký tự đầu tiên trong tên sheet.31(hoặc 255): Đây là tham sốnum_chars(số lượng ký tự cần lấy). Tại sao lại dùng số 31?- Theo quy định của Microsoft Excel, tên sheet không được dài quá 31 ký tự.
- Do đó, việc điền số 31 (hoặc một số lớn hơn như 255) đảm bảo rằng hàm
MIDsẽ lấy toàn bộ tên sheet, bất kể nó dài hay ngắn, mà không sợ bị cắt bớt.
Phương pháp này gọn gàng hơn một chút so với phương pháp dùng RIGHT vì bạn không cần dùng hàm LEN để tính toán độ dài chuỗi.
Cách kết hợp tên Sheet với văn bản khác
Trong thực tế thiết kế báo cáo (Dashboard Reporting), hiếm khi chúng ta chỉ để mỗi tên sheet trơ trọi. Bạn thường sẽ muốn thêm các từ ngữ mô tả để tiêu đề chuyên nghiệp hơn.
Ví dụ: Nếu tên sheet là “2024”, bạn muốn tiêu đề hiển thị là “Báo cáo Tổng hợp năm 2024”.
Bạn có thể thực hiện điều này dễ dàng bằng cách sử dụng toán tử và (&) để nối chuỗi văn bản với công thức lấy tên sheet.
Công thức mẫu:
="Báo cáo Tổng hợp năm " & RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))
Công thức nối thêm văn bản trước tên sheet trong Excel
Lưu ý khi nối chuỗi:
- Văn bản cố định phải được đặt trong dấu ngoặc kép
"". - Hãy nhớ thêm một dấu cách (khoảng trắng) ở cuối văn bản cố định (ví dụ:
"Báo cáo năm ") để tên sheet không bị dính liền vào chữ “năm”. - Bạn có thể dùng hàm
CONCAThoặcCONCATENATEthay cho dấu&, nhưng dấu&thường nhanh và gọn hơn.
Ví dụ nối văn bản vào phía sau tên sheet:
=MID(CELL("filename"),FIND("]",CELL("filename"))+1,31) & " - Bản chính thức"
Kết quả sẽ là: Sales Data – Bản chính thức.
Các lỗi thường gặp và cách khắc phục
Trong quá trình áp dụng các công thức trên, người dùng mới thường gặp phải một số lỗi cơ bản. Dưới đây là cách xử lý:
1. Lỗi trả về ô trống hoặc #VALUE!
- Nguyên nhân: File Excel của bạn chưa được lưu (Save). Khi file chưa có đường dẫn thực tế trên ổ cứng, hàm
CELL("filename")không có dữ liệu để trả về. - Khắc phục: Nhấn
Ctrl + Sđể lưu file, sau đó nhấnF9để cập nhật công thức hoặc nhấp đúp vào ô công thức và nhấn Enter.
2. Tên sheet không cập nhật khi đổi tên
- Nguyên nhân: Chế độ tính toán của Excel đang để ở Manual (Thủ công) hoặc hàm chưa được kích hoạt lại.
- Khắc phục: Vào thẻ Formulas > Calculation Options > chọn Automatic. Hoặc nhấn phím
F9để buộc Excel tính toán lại toàn bộ workbook.
3. Công thức hiển thị tên của sheet khác
- Nguyên nhân: Như đã đề cập ở phần trên, hàm
CELL("filename")không có tham chiếu có thể lấy thông tin của sheet đang active (sheet bạn đang xem) thay vì sheet chứa công thức. - Khắc phục: Luôn thêm tham chiếu ô
A1vào trong hàmCELL.- Sai:
CELL("filename") - Đúng:
CELL("filename", A1)
- Sai:
Ứng dụng thực tế trong quản lý công việc
Việc lấy tên sheet tự động không chỉ là một thủ thuật cho vui, nó có giá trị ứng dụng rất lớn trong việc xây dựng các file Excel chuyên nghiệp:
- Mẫu báo cáo in ấn: Khi bạn in hàng loạt sheet, việc tiêu đề tự động cập nhật theo tên tab giúp bạn kiểm soát hồ sơ dễ dàng, tránh nhầm lẫn giữa các tháng hoặc các phòng ban.
- Tạo mục lục tự động: Kết hợp với hàm
HYPERLINK, bạn có thể tạo ra các trang mục lục dẫn đến các sheet khác nhau dựa trên tên của chúng. - Kiểm soát phiên bản: Đặt tên sheet theo ngày (ví dụ: “01-10-2023”) và dùng công thức này để hiển thị ngày tháng ngay trong báo cáo mà không cần nhập liệu hai lần.
Việc nắm vững các hàm xử lý chuỗi như RIGHT, MID, FIND kết hợp với CELL không chỉ giúp bạn giải quyết vấn đề lấy tên sheet mà còn nâng cao tư duy logic khi xử lý dữ liệu dạng văn bản trong Excel.
FAQ – Câu hỏi thường gặp
1. Tại sao công thức của tôi trả về lỗi #VALUE!?
Lỗi này thường xảy ra nhất khi bạn chưa lưu (Save) file Excel. Hàm CELL("filename") yêu cầu file phải có đường dẫn thực tế trên máy tính. Hãy lưu file và thử lại.
2. Tôi có thể dùng cách này trên Google Sheets không?
Không hoàn toàn giống hệt. Google Sheets không hỗ trợ hàm CELL("filename") theo cách của Excel. Trên Google Sheets, bạn cần dùng Google Apps Script để tạo một hàm tùy chỉnh nhằm lấy tên sheet.
3. Làm sao để lấy tên Workbook (tên file) thay vì tên Sheet?
Bạn có thể dùng công thức kết hợp MID và FIND để lấy phần văn bản nằm giữa dấu ngoặc vuông [].
Công thức: =MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1)
4. Tên sheet trong Excel có giới hạn độ dài không?
Có, tên sheet trong Excel được giới hạn tối đa 31 ký tự và không được chứa các ký tự đặc biệt như / ? * : [ ].
5. Có cách nào lấy tên sheet mà không dùng công thức dài như vậy không?
Nếu bạn biết sử dụng VBA (Visual Basic for Applications), bạn có thể tạo một User Defined Function (UDF) đơn giản như sau:Function GetSheetName() GetSheetName = ActiveSheet.Name End Function. Sau đó dùng =GetSheetName() trong ô tính. Tuy nhiên, file sẽ phải lưu dưới dạng .xlsm (Macro-enabled).
Nguồn tham khảo
Để tìm hiểu sâu hơn về các hàm được sử dụng trong bài viết, bạn có thể tham khảo các tài liệu chính thức sau:
- Hàm CELL trong Excel – Hỗ trợ Microsoft: https://support.microsoft.com/vi-vn/office/cell-hàm-cell-51bd39a5-f338-4dbe-a33f-955d67c2b2cf
- Hàm FIND, FINDB – Hỗ trợ Microsoft: https://support.microsoft.com/vi-vn/office/find-h%C3%A0m-findb-c7912941-af2a-4bdf-a553-d0d89b0a0628
- Hàm MID, MIDB – Hỗ trợ Microsoft: https://support.microsoft.com/vi-vn/office/mid-h%C3%A0m-midb-2eba57be-0c05-4bdc-bf32-52df31d83ec7
- Tổng quan về công thức trong Excel: https://support.microsoft.com/vi-vn/office/t%E1%BB%95ng-quan-v%E1%BB%81-c%C3%B4ng-th%E1%BB%A9c-trong-excel-ecfdc708-9162-49e8-b993-c311f47ca173