แปลงตัวเลขเงินให้เป็นคำอ่านภาษาไทยด้วย Google Sheets(กูเกิ้ล ชีท)

หมวดนี้มีความรู้ ทิปการใช้งาน ผลิตภัณฑ์ของ Google สำหรับใช้ทำงาน ไม่ว่าจะเป็น Classroom, Google Search, Google Maps, Google Sites, Google ชีต, Google ปฏิทิน, Google ฟอร์ม, Google สไลด์, Google Doc
ซึ่งต่อมาจากเนื้อหาที่แชร์ไว้บนเว็บที่นี่

Moderator: mindphp, ผู้ดูแลกระดาน

กฎการใช้บอร์ด
ลิงค์บทความที่เกี่ยวกับหมวดนี้
Google For Work
Google Doc
Google Sheet
Google Data Studio
AePongsak
PHP VIP Members
PHP VIP Members
โพสต์: 4996
ลงทะเบียนเมื่อ: 17/09/2016 10:09 am

แปลงตัวเลขเงินให้เป็นคำอ่านภาษาไทยด้วย Google Sheets(กูเกิ้ล ชีท)

โพสต์ที่ยังไม่ได้อ่าน โดย AePongsak »


Google Sheets
(กูเกิ้ล ชีท)เป็นซอฟร์แวร์จัดการเกี่ยวกับเอกสาร สามารถทำงานได้เหมือนกับ Microsoft Excel (ไมโครซอร์ฟ เอ็กเซล)จะแตกต่างกัน สำหรับ Google sheets (กูเกิ้ล ชีท)จะทำงานบนเว็บเบราว์เซอร์โดยใช้อินเตอร์เน็ตในการ save งานเมื่อมีการเปลี่ยนเปลงเอกสาร
การเปลี่ยนตัวเลข ให้เป็นคำอ่านสามารถทำได้และเหมาะกับการนำไปประยุกค์ใช้กับเอกสารงาที่เกี่ยวข้อง เช่นการทำใบเสร็จสินค้า รายรับรายจ่าย ใบกำกับภาษี เป็นต้น

สามารถศึกษาการใช้ Google Apps for Work ที่ บทเรียน สอนใช้ Google Apps for Work

ขั้นตอนที่ 1: จะเปลี่ยนจากจำนวนเงินตัวเลขรวม ด้านบนให็เป็นคำอ่านภาษาไทย
7Sheet9.png
7Sheet9.png (45.5 KiB) Viewed 2646 times
ขั้นตอนที่ 2: Google Sheets อาจมีฟังก์ชันไม่ครบถ้วน ดังนั้นต้องเข้าไปเพิ่มฟังก์ชั่นบางตัว และจะทำการเพิ่มฟังก์ชัน BAHTTEXT
เพื่อใช้ในการแปรงตัวเลข Tool > Script editor...
7Sheet12.png
7Sheet12.png (100.53 KiB) Viewed 2646 times
ขั้นตอนที่ 3: ลบโค้ดเก่าออกทั้งหมด
7Sheet11.png
7Sheet11.png (32.58 KiB) Viewed 2646 times
ขั้นตอนที่ 4: โค้ดที่ใช้ในการเพิ่ม ฟังก์ชัน ใส่แล้วกด Save

Code BAHTTEXT
_________________________________________________________________________

โค้ด: เลือกทั้งหมด

function BAHTTEXT(number) {

 

 if (isNaN(number)) return "#VALUE!";

 var absNum = +(Math.round(Math.abs(number) + "e+2") + "e-2");

 if (absNum > 9999999999999.99) return "#NUM!";

 if (!absNum) return "ศูนย์บาทถ้วน";

 var numArray = absNum.toFixed(2).split(".");

 var bahtText = (numArray[0] == "0") ? "" : NUMBERTEXT(numArray[0]) + "บาท";

 bahtText += (numArray[1] == "00") ? "ถ้วน" : NUMBERTEXT(numArray[1]) + "สตางค์";

 

 function NUMBERTEXT(myInt) { 

 

  var digitArray = ["ศูนย์","หนึ่ง","สอง","สาม","สี่","ห้า","หก","เจ็ด","แปด","เก้า","สิบ"];

  var placeValueArray = ["","สิบ","ร้อย","พัน","หมื่น","แสน"];

  var numberText = "";

  myInt = String(+myInt);

 

  for (var i = 1; i <= myInt.length; i++) {

   var digit = myInt.charAt(i - 1);

   var place = (myInt.length - i) % 6;

   if (digit != 0) numberText += (digit == 1 && place == 0 && i != 1) ? "เอ็ด" :

                                 digitArray[digit] + placeValueArray[place];

   if (place == 0 && i != myInt.length) numberText += "ล้าน";

  }

 

  return numberText.replace(/หนึ่งสิบ/g,"สิบ").replace(/สองสิบ/g,"ยี่สิบ");

 } 

 

 return (number < 0) ? "ลบ" + bahtText : bahtText;

}
_________________________________________________________________________
7Sheet10.png
7Sheet10.png (53.4 KiB) Viewed 2646 times
ขั้นตอนที่ 5: จากนั้นเลือกที่ช่องแล้วใส่ชื่อฟังก์ชั่นที่สร้างเมื่อสักครู่ คือ BAHTTEXT โค้ดที่ใช้ในช่อง =BAHTTEXT(E11)
7Sheet15.png
7Sheet15.png (51.82 KiB) Viewed 2646 times
ขั้นตอนที่ 6: จะได้ ราคารวม ที่เป็นตัวอักษร
7Sheet14.png
7Sheet14.png (37.51 KiB) Viewed 2646 times
ขั้นตอนที่ 7: เมื่อ ราคารวมเปลี่ยน ตัวอักษรจะเปลี่ยนไปด้วย
7Sheet13.png
7Sheet13.png (61.57 KiB) Viewed 2646 times
แก้ไขล่าสุดโดย AePongsak เมื่อ 02/11/2016 7:24 pm, แก้ไขไปแล้ว 1 ครั้ง.
รูปภาพ
ξν℮ry story has an end but in life every end is a neω ßeginning.
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41125
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: แปลงตัวเลขเงินให้เป็นคำอ่านภาษาไทยด้วย Google Sheets(กูเกิ้ล ชีท)

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้าเป็นแบบ php ลองดูที่บทความนี้
https://www.mindphp.com/developer/23-fu ... B8%97.html
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 22