😛 เนื่องจากมีคำถามเกี่ยวกับวิธีการ List รายชื่อชีตค่อนข้างบ่อย และจากการตรวจสอบพบว่ามีการค้นหาเกี่ยวกับการ List รายชื่อชีตมากขึ้นเรื่อย ๆ เลยนำมาเขียนไว้ที่นี่เพื่อจะได้ใช้อ้างอิง ไม่ต้องเขียนใหม่ หรือ Copy มาแปะทุกครั้งที่เจอคำถาม
สำหรับ วิธีการนี้ใช้ Excel 4 Macro Function มาช่วย
ซึ่งต้องกำหนด Security ในเมนู File > Options > Trust Center > Trust Center Settings… > Macro Settings > เลือก Enable all macros (not recommended; potentially dangerous code can run) นอกจากนี้แล้วจะต้อง Save ไฟล์ให้มีนามสกุลให้เป็นประเภท Excel Macro – Enabled เช่น .xlsm ถึงจะใช้ได้
วิธีการทำดังนี้ครับ
- เปิดไฟล์ที่ต้องการ List รายชื่อ Sheet โดยทำการเพิ่ม 1 Sheet คือ Sheet ที่ต้องการให้แสดงรายชื่อ Sheet ทั้งหมด
- เข้าเมนู Formulas > Name Manager > New
- ช่อง Names: คีย์ CountSheet > ช่อง Refers to: คีย์
=Get.Workbook(4)
> OK > New - ช่อง Names: คีย์ ListSheet > ช่อง Refers to: คีย์
=RIGHT(GET.WORKBOOK(1),LEN(GET.WORKBOOK(1))-FIND("]",GET.WORKBOOK(1)))
> OK > Close
- ช่อง Names: คีย์ CountSheet > ช่อง Refers to: คีย์
- ใน Sheet ที่เพิ่มเข้ามาใหม
- เซล A1 คีย์
=CountSheet
Enter - เซล A2 คีย์
=IF(ROWS($A$2:A2)<=$A$1,INDEX(ListSheet,ROWS($A$2:A2)),"")
Enter แล้ว Copy ลงด้านล่าง
- เซล A1 คีย์
สามารถดาวน์โหลดไฟล์แนบด้านล่างไปศึกษาได้ตามสะดวกครับ 😀
Revised: October 11 , 2017 at 6:30
ทำสูตรเสร็จแล้วขอบคุณมากๆ
ยินดีด้วยครับ
สุดยอด..ครับ
อาจาร์ยสุดยอด ไม่เคยเห็นใครทำได้พยายามแบบนี้ ขอชื่มชมอย่างจริงใจ ผมอ่านอักษรที่อาจาร์ยเขียนทุกตัว หากไม่รักการถ่ายทอดให้ผู้อื่น ทำไม่ได้แน่นอน ขอความดีนี้จงให้อาจาร์ยมีสุขภาพที่แข็งแรง ตลอดไป ครับ
สู้ สู้ สู้ครับ
อาร์ตครับ