FORMULATEXT ดึงสูตรจากเซลล์มาแสดงเป็นข้อความ ใช้สำหรับ Audit ตรวจสอบสูตร หรือทำ Documentation ของ Workbook ถ้าเซลล์ไม่มีสูตรจะคืนค่า #N/A
| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| reference | Reference | การอ้างอิงเซลล์ที่ต้องการดึงสูตรออกมา สามารถอ้างอิงไปยัง Sheet อื่นหรือ Workbook อื่นที่เปิดอยู่ได้ |
FORMULATEXT ใช้ดึงสูตรจากเซลล์ที่ระบุมาแสดงเป็นข้อความ โดยจะแสดงเหมือนกับที่เห็นใน Formula Bar ทุกประการ
.
ที่เจ๋งคือมันเหมาะสำหรับการทำ Documentation หรือ Audit สูตรในไฟล์ Excel โดยไม่ต้องคลิกไปดูทีละเซลล์ เรียกได้ว่าประหยัดเวลาไปเยอะมากครับ
.
ส่วนตัวผมใช้บ่อยมากตอนต้องส่งมอบงานให้คนอื่น หรือตอนตรวจสอบว่าสูตรในแต่ละเซลล์ถูกต้องหรือไม่ 😎
ตรวจสอบสูตรคำนวณในรายงานการเงินโดยดึงสูตรทั้งหมดมาแสดงใน Sheet แยก ช่วยให้ Auditor ตรวจสอบได้ง่ายและครบถ้วน
ทำเอกสารอธิบายการทำงานของ Workbook โดยแสดงสูตรสำคัญทั้งหมดพร้อมคำอธิบาย เหมาะสำหรับการส่งมอบงานหรือ Training
เปรียบเทียบสูตรในหลายเซลล์พร้อมกัน เพื่อหาว่าเซลล์ไหนมีสูตรผิดพลาดหรือแตกต่างจากที่ควรจะเป็น
สมมติเซลล์ B2 มีสูตร =SUM(A1:A10) ฟังก์ชัน FORMULATEXT จะดึงสูตรนั้นมาแสดงเป็นข้อความ
สังเกตว่าผลลัพธ์จะมีเครื่องหมาย = นำหน้าด้วยเหมือนกับที่เห็นใน Formula Bar เลยครับ 💡
สมมติเซลล์ C10 ใน Sheet 'Report' มีสูตรคำนวณกำไร =Revenue-Expenses
วิธีนี้ช่วยให้ Auditor หรือหัวหน้าตรวจสอบสูตรได้โดยไม่ต้องสลับไปดู Sheet อื่น ที่เจ๋งคือสามารถสร้าง Audit Sheet รวมสูตรสำคัญทั้งหมดไว้ที่เดียวได้เลย 😎
ใช้ ISNA ตรวจจับกรณีที่เซลล์ไม่มีสูตร (FORMULATEXT คืน #N/A) แล้วแสดงข้อความแทน
ส่วนตัวผมใช้วิธีนี้ตอนทำ Documentation เพราะช่วยแยกว่าเซลล์ไหนเป็นค่าที่พิมพ์เอง เซลล์ไหนเป็นสูตรคำนวณครับ 💡
สร้างข้อความแสดงทั้งที่อยู่เซลล์และสูตรในเซลล์นั้น เหมาะสำหรับทำ Audit Log หรือ Documentation
ที่เจ๋งคือใช้ ADDRESS + ROW + COLUMN แสดงที่อยู่เซลล์แบบ Dynamic ถ้าย้ายเซลล์ก็ยังอ้างอิงถูกต้อง 😎
ใน Excel 365 สามารถใช้กับ Range ได้ ผลลัพธ์จะ Spill ออกมา
วิธีนี้ช่วยหาว่าเซลล์ไหนมีปัญหาและดูสูตรได้พร้อมกัน ประหยัดเวลา Debug มากครับ 💡
สร้าง Documentation ของทั้ง Range โดยแสดงสูตรถ้ามี หรือแสดง [Value] ถ้าเป็นค่าคงที่
ส่วนตัวผมใช้วิธีนี้ตอนส่งมอบงานให้คนอื่น เพราะสร้าง Audit Sheet ได้รวดเร็วมากครับ 😎
มีสาเหตุหลายอย่างครับ:
1. เซลล์ที่อ้างอิงไม่มีสูตร (เป็นค่าคงที่หรือเซลล์ว่าง)
2. สูตรยาวเกิน 8,192 ตัวอักษร
3. Sheet มีการป้องกัน (Protected) และซ่อนสูตร
4. อ้างอิงไปยัง Workbook อื่นที่ไม่ได้เปิดอยู่
ลองเช็คเงื่อนไขเหล่านี้ดูนะครับ 😅
ได้ครับ! สามารถใช้ได้ทั้ง =FORMULATEXT(Sheet2!A1) หรือ =FORMULATEXT([OtherFile.xlsx]Sheet1!A1)
แต่สำหรับ Workbook อื่น ไฟล์นั้นต้องเปิดอยู่ใน Excel ด้วย ไม่งั้นจะได้ #N/A ครับ 💡
ใน Excel 365 จะคืนค่าเป็น Array และ Spill ผลลัพธ์ออกมาหลายเซลล์ เช่น =FORMULATEXT(A1:A5) จะแสดงสูตรของ 5 เซลล์
แต่ใน Excel เวอร์ชันเก่าจะคืนค่าเฉพาะเซลล์ซ้ายบนสุดของ Range เท่านั้นครับ 😎
ไม่ครับ! แม้จะอ้างอิงไปยังเซลล์ที่มีสูตร FORMULATEXT เอง ก็ไม่ทำให้เกิด Circular Reference
Excel ออกแบบให้ FORMULATEXT อ่านค่าสูตรเป็น Text โดยไม่ evaluate สูตรซ้ำ เลยไม่มีปัญหานี้ครับ 💡
ใช้ฟังก์ชัน ISFORMULA ครับ! ถ้าเซลล์มีสูตรจะคืน TRUE ถ้าไม่มีจะคืน FALSE
ตัวอย่าง: =IF(ISFORMULA(A1), FORMULATEXT(A1), "ไม่มีสูตร")
ส่วนตัวผมแนะนำใช้คู่กันเสมอ เพื่อหลีกเลี่ยง #N/A ครับ 😎
ได้ครับ! Google Sheets รองรับ FORMULATEXT เหมือนกัน Syntax และพฤติกรรมเหมือน Excel ทุกประการ
เลยใช้สูตรเดียวกันได้เลยถ้าต้องทำงานข้ามแพลตฟอร์ม 💡
Ctrl+` จะแสดงสูตรทุกเซลล์ใน Sheet พร้อมกัน ทำให้อ่านยาก
FORMULATEXT ดีกว่าตรงที่:
– เลือกแสดงเฉพาะเซลล์ที่ต้องการ
– ผลลัพธ์เป็น Text นำไปใช้ต่อได้
– ไม่รบกวนการแสดงผลปกติ
ส่วนตัวผมใช้ FORMULATEXT เกือบทุกครั้งครับ 😎
ฟังก์ชันที่ผู้เขียนโยงไว้กับ FORMULATEXT จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
ดึงข้อมูลเกี่ยวกับเซลล์ เช่น ที่อยู่ ชื่อไฟล์ รูปแบบตัวเลข หรือความกว้างคอลัมน์ ใช้ทำ Dynamic Header, ตรวจสอบไฟล์ก่อนประมวลผล หรือแสดง Path ของ Workbook บนรายงาน
ตรวจสอบว่าเซลล์ที่อ้างอิงมีสูตรอยู่หรือไม่ คืนค่า TRUE ถ้าเซลล์นั้นเป็นสูตร และ FALSE ถ้าเป็นค่าคงที่หรือเซลล์ว่าง ใช้ตรวจสอบไฟล์ก่อนแก้ไข
INDIRECT แปลงข้อความเป็นการอ้างอิงเซลล์จริง ช่วยให้สามารถเปลี่ยนตำแหน่งเซลล์ได้ไดนามิกโดยใช้ตัวเลขหรือชื่อเซลล์
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่