แปลงตัวเลขลงในคำ

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

Excel 2013 และExcel 2016 ไม่มีฟังก์ชันเริ่มต้นที่แสดงตัวเลขเป็นคำในภาษาอังกฤษในเซลล์สเปรดชีต แต่คุณสามารถเพิ่มความสามารถนี้ ด้วยการวางโค้ดฟังก์ชัน SpellNumber ลงในแผ่นงานโมดูล ฟังก์ชันนี้ช่วยให้คุณแปลงจำนวนเงินดอลลาร์และเซ็นต์คำ

ถ้าคุณต้องการแปลงค่าตัวเลขเป็นรูปแบบข้อความโดยไม่ต้องแสดงให้เห็นเป็นคำฟังก์ชันข้อความที่ใช้แทน

ในบทความนี้

สร้างฟังก์ชัน SpellNumber เพื่อแปลงตัวเลขเป็นคำ

  1. ใช้แป้นพิมพ์ลัด Alt + F11 เพื่อเปิด Visual Basic Editor

    หมายเหตุ: คุณยังสามารถเข้าถึง Visual Basic Editor โดยการแสดงแท็บนักพัฒนาใน ribbon ของคุณ

  2. คลิกแท็บแทรก คลิ กมอดูล

    บนเมนูแทรก คลิกมอดูล
  3. คัดลอกบรรทัดของโค้ดต่อไปนี้

    หมายเหตุ: โค้ดนี้เรียกว่าฟังก์ชันแมโครศักยภาพงานของการแปลงตัวเลขเป็นข้อความทั่วทั้งสเปรดชีตของคุณ

    ตัวเลือกแบบตายตัว

    ' ฟังก์ชันหลัก

    ฟังก์ชัน SpellNumber (ByVal MyNumber)

    ลดความสว่าง Temp ดอลลาร์ เซนต์

    Dim DecimalPlace, Count

    ReDim Place(9) เป็นสตริง

    Place(2) = "หลักพัน"

    Place(3) = "ล้าน"

    Place(4) = "Billion"

    Place(5) = " Trillion "

    ' สตริจำนวนที่ใช้แทน

    MyNumber = Trim(Str(MyNumber))

    ' ตำแหน่งของตำแหน่งทศนิยม 0 ถ้าไม่มี

    DecimalPlace = InStr (MyNumber, "ก")

    ' แปลงเซนต์ และตั้งค่า MyNumber เป็นเงินดอลลาร์

    ถ้า DecimalPlace > 0 แล้ว

    เซนต์ = GetTens (ซ้าย (Mid (MyNumber, DecimalPlace + 1) & _ "00", 2))

    MyNumber = Trim (ซ้าย (MyNumber, DecimalPlace - 1))

    สิ้นสุดถ้า

    นับจำนวน = 1

    ในขณะที่ MyNumber <> ""

    Temp = GetHundreds (ขวา (MyNumber, 3))

    ถ้า Temp <> "" แล้วดอลลาร์ = Temp & Place(Count) & ดอลลาร์

    ถ้า Len(MyNumber) > 3 แล้ว

    MyNumber =ซ้าย (MyNumber, Len(MyNumber) - 3)

    Else

    MyNumber = ""

    สิ้นสุดถ้า

    นับจำนวน =จำนวน + 1

    วนรอบ

    เลือกตัวพิมพ์ใหญ่ดอลลาร์

    กรณี ""

    ดอลลาร์ = "เป็นดอลลาร์ไม่มี"

    กรณี "หนึ่ง"

    ดอลลาร์ = "ดอลลาร์หนึ่ง"

    กรณีที่อื่น

    ดอลลาร์ =ดอลลาร์ & "ดอลลาร์"

    เลือกจุดสิ้นสุด

    เลือกเซนต์ตัวพิมพ์ใหญ่

    กรณี ""

    เซนต์ = "และเศษ สตางค์ไม่มี"

    กรณี "หนึ่ง"

    เซนต์ = "และ เซ็นต์หนึ่ง"

    กรณีที่อื่น

    เซนต์ = "และ" & เซนต์ & "เซนต์"

    เลือกจุดสิ้นสุด

    SpellNumber =ดอลลาร์และเศษสตางค์

    ฟังก์ชันสิ้นสุด

    ' แปลงตัวเลขจาก 100 999 ข้อความ

    ฟังก์ชัน GetHundreds (ByVal MyNumber)

    Dim ผลลัพธ์เป็นสตริงที่

    ถ้า Val(MyNumber) = 0 ออกแล้วฟังก์ชัน

    MyNumber =ขวา ("000" & MyNumber, 3)

    ' วางร้อยแปลง

    ถ้า Mid (MyNumber, 1, 1) <> "0" แล้ว

    ผลลัพธ์ = GetDigit (Mid (MyNumber, 1, 1)) & "ร้อย"

    สิ้นสุดถ้า

    ' แปลงตำแหน่งหลักสิบและไฟล์

    ถ้า Mid (MyNumber, 2, 1) <> "0" แล้ว

    ผลลัพธ์ =ผลลัพธ์และ GetTens (Mid (MyNumber, 2))

    Else

    ผลลัพธ์ =ผลลัพธ์และ GetDigit (Mid (MyNumber, 3))

    สิ้นสุดถ้า

    GetHundreds =ผลลัพธ์

    ฟังก์ชันสิ้นสุด

    ' แปลงตัวเลขจาก 10 ถึง 99 ข้อความ

    ฟังก์ชัน GetTens(TensText)

    Dim ผลลัพธ์เป็นสตริงที่

    ผลลัพธ์ = "" ' Null หาค่าของฟังก์ชันชั่วคราว

    ถ้า Val (ซ้าย (TensText, 1)) = 1 แล้ว ' ถ้าค่าระหว่าง 10 19 ...

    เลือก Val(TensText) ตัวพิมพ์ใหญ่

    กรณีที่ 10: ผลลัพธ์ = "สิบ"

    กรณีที่ 11: ผลลัพธ์ = "Eleven"

    กรณี 12: เกิด = "12"

    กรณีที่ 13: ผลลัพธ์ = "Thirteen"

    กรณี 14: เกิด = "Fourteen"

    กรณีที่ 15: ผลลัพธ์ = "Fifteen"

    กรณีที่ 16: ผลลัพธ์ = "Sixteen"

    กรณี 17: เกิด = "Seventeen"

    กรณี 18: เกิด = "Eighteen"

    กรณีที่ 19: ผลลัพธ์ = "Nineteen"

    กรณีที่อื่น

    เลือกจุดสิ้นสุด

    อีก ' ถ้าค่าระหว่าง 20 99 ...

    เลือกตัวพิมพ์ใหญ่ Val (ซ้าย (TensText, 1))

    กรณีที่ 2: ผลลัพธ์ = "Twenty"

    กรณีที่ 3: ผลลัพธ์ = "Thirty"

    กรณีที่ 4: ผลลัพธ์ = "Forty"

    กรณีที่ 5: ผลลัพธ์ = "ห้าสิบ"

    กรณีที่ 6: ผลลัพธ์ = "Sixty"

    กรณีที่ 7: ผลลัพธ์ = "Seventy"

    กรณีที่ 8: ผลลัพธ์ = "Eighty"

    กรณีที่ 9: ผลลัพธ์ = "Ninety"

    กรณีที่อื่น

    เลือกจุดสิ้นสุด

    ผลลัพธ์ =_ผลลัพธ์และ GetDigit

    (ขวา (TensText, 1)) ' เรียกข้อมูลที่อยู่

    สิ้นสุดถ้า

    GetTens =ผลลัพธ์

    ฟังก์ชันสิ้นสุด

    ' แปลงตัวเลขตั้งแต่ 1 ถึง 9 ข้อความ

    ฟังก์ชัน GetDigit(Digit)

    เลือก Val(Digit) ตัวพิมพ์ใหญ่

    กรณีที่ 1: GetDigit = "หนึ่ง"

    กรณีที่ 2: GetDigit = "2"

    กรณีที่ 3: GetDigit = "3"

    กรณีที่ 4: GetDigit = "สี่"

    กรณีที่ 5: GetDigit = "ห้า"

    กรณีที่ 6: GetDigit = "หก"

    กรณีที่ 7: GetDigit = "เจ็ด"

    กรณีที่ 8: GetDigit = "แปด"

    กรณีที่ 9: GetDigit = "เก้า"

    กรณีอีก: GetDigit = ""

    เลือกจุดสิ้นสุด

    ฟังก์ชันสิ้นสุด

  4. วางบรรทัดของโค้ดลงในมอดูล 1 (โค้ด) กล่องนั้น

    โค้ดวางในมอดูล 1 กล่อง (โค้ด)
  5. คลิกไฟล์ คลิ กปิด และกลับไปยัง Microsoft Excel ฟังก์ชัน SpellNumber พร้อมที่จะใช้ได้ในขณะนี้

    หมายเหตุ: ฟังก์ชันนี้ทำงานสำหรับคุณเปิดไฟล์Excel ปัจจุบันเท่านั้น เมื่อต้องการใช้ฟังก์ชันนี้ในเวิร์กบุ๊กExcel อื่น คุณต้องทำซ้ำขั้นตอนในการคัดลอก และวางโค้ดในไฟล์นั้น

ด้านบนของหน้า

ใช้ฟังก์ชัน SpellNumber ในแต่ละเซลล์

  1. พิมพ์สูตร= SpellNumber (ค่า) ลงในเซลล์ที่คุณต้องการแสดงตัวเลขเป็นลายลักษณ์อักษร แทนค่าด้วยตัวเลือกจำนวนของคุณ

  2. บนคีย์บอร์ดของคุณ กด Enter

    ตัวอย่างเช่น ถ้าคุณพิมพ์=SpellNumber(22.50) เซลล์ควรอ่านยี่สิบสองดอลลาร์และ 50 เซนต์

    เคล็ดลับ: เมื่อต้องการแปลงตัวเลขเป็นข้อความในเซลล์แยกกัน แทนค่าตัวเลข ด้วยการอ้างอิงเซลล์ในสูตร SpellNumber ตัวอย่าง พิมพ์=SpellNumber(A1) เพื่อแสดงค่าเป็นลายลักษณ์อักษรของเซลล์ A1

ด้านบนของหน้า

บันทึกเวิร์กบุ๊กฟังก์ชัน SpellNumber

Excel ไม่สามารถบันทึกเวิร์กบุ๊ก มีแมโครฟังก์ชันในรูปแบบเวิร์กบุ๊กแมโครได้มาตรฐาน ถ้าคุณคลิกไฟล์ >บันทึก กล่องโต้ตอบโครงการ VB เปิดขึ้น คลิกไม่ใช่

ในกล่องโต้ตอบโครงการ VB คลิกหมายเลข

คุณสามารถบันทึกไฟล์ของคุณเป็นแบบexcel macro-enabled Template เมื่อต้องการเก็บไฟล์ของคุณในรูปแบบปัจจุบัน

  1. คลิก ไฟล์ > บันทึกเป็น

  2. คลิกที่เมนูดรอปดาวน์บันทึกเป็นชนิด และเลือกExcel Macro-Enabled Template

    เลือกแม่แบบใช้แมโคร Excel
  3. คลิก บันทึก

ด้านบนของหน้า

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

ดูเพิ่มเติม

ฟังก์ชัน TEXT

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×