แปลงจำนวนเงินเป็นตัวอักษรทำไงค่ะ
กระทู้เก่าบอร์ด อ.Yeadram

 5,447   11
URL.หัวข้อ / URL
แปลงจำนวนเงินเป็นตัวอักษรทำไงค่ะ

ทำใบเสร็จเเรียบร้อยแล้ว ขาดแต่ช่องจำนวนเงินตัวหนังสือ จะเขียนโค้ดยังไง   

สมมุติว่า ดิชัั้นสร้างText Box สำหรับใส่จำนวนเงินตัวหนังสือโดยเฉพาะ แล้วตั้ง

ชื่อว่า จำนวนเงินรวม แล้วดิชั่นจะต้องทำยังไต่อค่ะ คือหาจากกระทู้เก่าๆก็ยังไม่

เข้าใจค่ะ คืออยากให้ผู้ที่เคยทำได้ช่วยตอบหน่อยว่า ใส่โค้ดตรงไหน ยังไง

ขอบคุณค่ะ

11 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R19182
1. เอาภาษาไทย หรือภาษาอังกฤษครับ
2. ส่งไฟล์มาดีกว่า ผมทำให้แป๊บเดียว แล้วไปศึกษาเอา เพราะถ้าอธิบายจะยาว

รายละเอียดที่แปะไฟล์ตามนี้ครับ
http://www.thai-access.com/yeadram_view.php?topic_id=4183
2 @R19186
อื่ม ขออนุญาติ อ.ธัชชัย เสริมอีกวิธีง่ายๆ นะครับ คือหากไม่อยากเขียนฟังก์ชั่น หากเครื่องคุณต้องมีโปรแกรม Excel ลงในเครื่องด้วย แล้วดึงฟังก์ชั่น Excel มาใช้ได้เลย ตัวอย่าง

- สร้างปุ่มใหม่ขึ้นมา ใส่โค๊ดใน Event > On Click: ดังนี้:

    Dim objExcel As Object
    Set objExcel = CreateObject("Excel.Application")
    MsgBox objExcel.WorksheetFunction.BahtText(12.25)

ผลลัพธ์ = "สิบสองบาทยี่สิบห้าสตางค์"

ปรับใช้ดูครับ
3 @R19187
ขอบคุณครับ คุณ TTT

จริงๆ แล้ว ผมทำไฟล์ไว้ 3 เวอร์ชั่นครับ มีทั้ง BahtText, EnglishText แล้วก็ ExcelBahtText

ผมถึงต้องถามก่อนว่าจะเอาเป็นภาษาอะไรอะครับ

ตอนแรกก็ว่าจะแปะให้อยู่ครับ แต่อ่านจากเจ้าของกระทู้ เขาบอกไม่เข้าใจก็เลยว่าจะทำให้แทน
4 @R19188
ขอบคุรอาจารย์ทั้ง2ท่านคะ ดูเหมือนทำง่ายน่ะค่ะ แต่ ดิชั่น ไม่รู้เรื่องโค้ด ไม่รู้เรื่อง

ดึงฟังกชั่นจาก Excel อะไรเลยน่ะค่ะ   เลยอยากจะให้อาจารย์ทั้ง 2 อธิบายใหม่

สำหรับอาจารย์ TTT   ดิชั่นได้โพสต์รูปลงมาแล้วว่า ต้องทำตามขั้นตอนแบบนี้ใช่

ไหมค่ะ คือสร้างปุ่ม ที่อ่างอิงตัวเลขจากTextBox อันนึง แล้วมาสร้างอีกTextBox อีก

อันเพื่อจะใ้แปลงเป้นตัวหนังสือ


ส่วนอาจารย์ธัชชัย ดิชั้น ต้องการแปลงจำนวนเงินเป็นตัวอักษรภาษาไทยค่ะ   ถ้า

อาจารย์มีไฟล์ที่อาจารย์ทำแล้วแปลงเป็นตัวหนังสือภาษาไทยเรียบร้อยแล้ว ก็ส่ง

ลิงค์มาก็ได้น่ะค่ะ เดี๋ยวดิชัั้นจะทำตามขั้นตอนเอง ลิงค์ที่อาจารย์ให้มาไม่มีไฟน์ที่

แปลงเป็นภาษาไทยค่ะ
5 @R19190
ผมนำ Code ของคุณ TTT มาทำเป็นไฟล์ให้แล้วนะครับ

คำสั่งอยู่ After Update ของ Text Box อันบนที่ใส่ตัวเลขนะครับ

พอใส่เสร็จแล้วข้อความจะแสดงที่ TextBox อันล่าง แต่อาจช้านิดนึง

https://www.dropbox.com/sh/ig2emrh118hr92m/AADSVM3_vcOwbvu6czzxY3iga/BahtTextExcelTTT.accdb
6 @R19192
ดิชั้นได้ดาวน์โหลดงานของอาจารย์จากลิงค์มาแล้วนะค่ะ แต่ตัวหนังสือมันก็ยังไม่

ขึ้นอยู่ดี ดิชั้นรอตั้งนานก็ยังไม่มา ดิชั้นขอทราบวิธีใสโค้ดยาวๆค่ะ แต่อยากทราบว่า

ต้องใส่คำสั่งหลัง Event อันไหนค่ะ แล้วไปที่อะไรต่อหลังจากนั้นมีให้เลือก 3 คำ

สั่งค่ะ   Macro Builder ,   expressuon builder ,   Code builder
7 @R19194
ผมเข้าใจว่าที่มันไม่ขึ้นเพราะคุณไม่ได้ไปคลิกปุ่ม Enable Content มากกว่าครับ

ปุ่มอยู่ในแถบเหลืองๆ ตอนเปิดไฟล์ขึ้นมา

ปัญหานี้ผมเจอบ่อย

8 @R19195
เวลาเขียนโค๊ด VBA คือให้เลือกที่ Code builder ครับ

แต่อย่างที่ อ.ธัชชัย บอกแหละครับ โปรแกรม MS Access อาจติดเรื่องของ Security Warning Macros คุณต้องเข้าไปกำหนดใน Options ของโปรแกรม MS Access เรื่องของ Macro Setting ให้เป็น Enable all macro

หรืออีกวิธี (ไม่รู้ว่ามันจะช่วยให้ง่ายหรือยากขึ้นกันแน่) จากภาพเดาว่าคุณใช้ office 2010 ถ้าใช่ก็ทำตามนี้ดู

1. คลิ๊กเมาส์ขวาที่ Desktop เลือกเมนู New > Text Document
2. จะได้ไฟล์ New Text Document.txt เปล่าๆมา คลิกๆเปิดมันขึ้นมา ใส่โค๊ดนี้ลงไป
On Error Resume Next

Dim WshShell
Set WshShell = CreateObject("WScript.Shell")

MsgBox "Click OK to complete the setup process."

Dim strRegPath
Dim Application_Version
Application_Version = "14.0" 'ถ้าเป็น Office 2013 ให้ใส่ 15.0
strRegPath = "HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application_Version & "\Access\Security\VBAWarnings"
WScript.echo strRegPath
WshShell.RegWrite strRegPath, 1, "REG_DWORD"

If Err.Code <> 0 Then
   MsgBox "Error" & Chr(13) & Chr(10) & Err.Source & Chr(13) & Chr(10) & Err.Message
End If

WScript.Quit


3. จากนั้นไปที่เมนู File > Save As: เป็นชื่ออะไรก็ได้แต่นามสกุล vbs เช่น Macro.vbs แล้วปิดโปรแกรม notepad ไป

4. เราจะเห็นไฟล์ชื่อ Macro.vbs อยู่บน Desktop คลิกๆเพื่อเรียกมัน จะมีหน้าต่างข้อความ Click Ok อะไรประมาณนี้ให้กด OK จะเสร็จ

5. เรียกไฟล์ MS Access ของ อ.ธัชชัย ใหม่ ถ้าไม่มีอะไรผิดพลาดก็จะสามารถใช้งานได้

ปล. วิธีนี้ทำครั้งเดียวพอ เสร็จแล้วลบไฟล์ทิ้ง อีกอย่างนี้เป็นการเขียนสคริปแก้ค่าระบบ หากไปเจอในเว็บอื่นๆ หากอ่านโค๊ดไม่ออกอย่าได้ลองเพราะจะทำให้ Windows เราพังได้
9 @R19202
ขอบคุณสำหรับอาจารย์ทั้ง 2ค่ะ แต่ดิชั้นไม่แน่ใจว่า ดิชั้นอธิบายอะไรผิดหรือเปล่า     รู้สึกว่าอาจารย์ทั้ง 2 จะตอบไม่ตรงประเด็นหรืออาจจะคิดลึกเกินไป ทำให้อาจารย์ตอบมาดิชั้นเลยงงเพ่ิมขคึ้นมาอีกค่ะ   จะอธิบายใหม่ง่ายๆน่ะค่ะ   เหมือนเราใช้งาน Excel เรา พิมพ์จำนวนเงินตัวเขลงในช่อง A1 เป็นเงิน 100 แล้วเราจะให้มันขึ้นเป็นตัวหนังสือที่ช่อง A2 เราก็ใส่ =bahttext(a2)   อะไรแบบเนี้ยะ ค่ะ   ในACEES ้เช่นเดียวกัน ถ้าดิชั้น สร้าง Text Box   ขึ้น 2 อัน พิมพ์จำนวนเงินในText box ช่องที่ 1 เป็น 100   แล้วTextbox ช่องที่2จะต้องขึ้นจำนวนเงินเป็นตัวอักษร แค่เนี้ยะเองค่ะ อยากทราบว่า โค้ดของมันคืออะไร ใส่ ใน Code builder ใส่ในคำสั่ง VBA ใส่ในคำสั่งย่อย Code builder ตามที่อาจารย์ TTTT แนะนำใช่มั้ยค่ะ

ส่วนที่อาจารย์ TTTT แนะนำ ดิชั้นขอบุณค่ะ แ่คิดว่าไม่ดีกว่า เดียวเครื่องพังขึ้นมา ไม่อยากมาแก้ปัญหาตามหลัง   และดิชั้นได้อ่านกะทู้เก่าๆที่เค้าถามเรื่องพวกนี้ ดิชั้นก็ยังทำไม่ได้ เพราะว่า ว่าไม่รู้ว่าไปใส่ในช่องไหน แต่ เดี่ยวดิชั้นจะนั่งพยามยามทำไม ถ้าไม่ได้จริงๆ    คงต้องพักสมองก่อน แล้วค่อยมาทำกันใหม่ ต้องทำให้ได้ภายในชาตินี้ค่ะ
10 @R19204
ก็ใน (R19190) ก็น่าจะตรงกับความต้องการของคุณมากที่สุดแล้วนี่นา แค่คลิกปุ่มตาม (R19194) ก็ใช้งานได้แล้วครับ

(ทำครั้งแรกครั้งเดียว)
11 @R19213
ขอบคุณนะค่ะ เดียวดิชั่นหาวิธีอื่นค่ะ :)
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2277s