ROMAN ใช้แปลงตัวเลข (1–3999) ให้เป็นเลขโรมันในรูปข้อความ เช่น 10 → “X” และ 2024 → “MMXXIV” โดยสามารถกำหนดรูปแบบ (form) เพื่อให้เป็นแบบคลาสสิกหรือแบบย่อได้
=ROMAN(number, [form])
=ROMAN(number, [form])
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| number | Number | Yes | ตัวเลข (1-3999) | |
| form | Number | Optional | 0 | รูปแบบ (0=Classic, 4=Simplified) |
ROMAN(10)=ROMAN(10)
"X"
ROMAN(99)=ROMAN(99)
"XCIX"
ROMAN(2024)=ROMAN(2024)
"MMXXIV"
ไม่ได้ค่ะ ผมเคยลองแล้ว ROMAN จะให้ #VALUE! error ถ้าคุณป้อนเลข 0 หรือจำนวนลบเข้าไป ส่วนตัวผมอยากให้มันรองรับจำนวนลบเพื่อให้ความหมายอย่างไรก็ตาม แต่เลขโรมันไม่มีแนวคิดเรื่องจำนวนลบ ลองหลีกเลี่ยงหรือใช้ IF เพื่อจัดการค่าดังกล่าวดีกว่า
ผมจำได้ว่า ROMAN รองรับเลขสูงสุด 3999 เท่านั้น ถ้าคุณพยายามแปลง 4000 ขึ้นไป จะได้ #VALUE! error เหตุผลก็เพราะเลขโรมันเก่า ๆ ไม่มีเครื่องหมายสำหรับตัวเลขที่ใหญ่ขึ้นไป ส่วนตัวผมสิ้นสุดที่ MMCMXCIX (3999) เสมอ
ผลลัพธ์มาเป็นข้อความ (text) เสมอ ผมทดสอบแล้ว ถ้าคุณพยายามบวก ROMAN(10) + ROMAN(20) คุณจะได้ error เพราะ “X” + “XX” ไม่สามารถบวกเลขได้ ถ้าอยากใช้ตัวเลข ต้องแปลงกลับเป็นตัวเลขด้วย ARABIC function
ฟังก์ชัน ROMAN จะแปลงตัวเลข (1-3999) ให้เป็นข้อความเลขโรมันแบบคลาสสิก เช่น 4 = “IV”, 99 = “XCIX”, 2024 = “MMXXIV” โดยพารามิเตอร์ form ช่วยให้คุณเลือกว่าต้องการแบบคลาสสิก (0) หรือแบบย่อ (4) ได้.
ที่เจ๋งคือ ROMAN ยังรองรับการเขียนแบบลบ (subtractive notation) อย่างอัตโนมัติ เช่น 9 = “IX” แทนที่จะเป็น “VIIII” ซึ่งเป็นรูปแบบเลขโรมันที่ถูกต้องตามหลักประวัติศาสตร์.
ส่วนตัวผมชอบใช้ ROMAN สำหรับเลขบทหนังสือหรือโครงการเสนอราคา เพราะมันดูมีความเป็นทางการและเก่าแก่ ตอนแรกผมยังคิดว่ามันจะซับซ้อน แต่จริง ๆ แล้วมันง่ายมากเลย 😎