|
|
- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -
|
|
|
กระทู้ #735 [Delphi] (จาก IP: 222.123.46.132)
ป้อน 50 ทำไงให้ออกมาเป็น "ห้าสิบบาทถ้วน" ใครทราบ โปรดช่วยด้วย ขอบคุณครับ
ใครมี Source code แปลงตัวเลขเป็นข้อความค่าเงินบาท รบกวนหน่อยนะครับ จะฝึกทำโปรแกรมบัญชีง่าย ๆ ไว้ใช้เองที่ร้านน่ะครับ
|
จากคุณ
:
Kabode / sontaya_pc@hotmail.com [2006-11-22 23:30:25]
|
|
ความคิดเห็น #25103 (จาก IP: 210.4.139.129)
ไม่มี source มีแค่หลักการครับ ใช้หลัการหารเอาเศษ ดึงมาทีละหลัก แล้วก็นำมา แปลงเป็นค่าตัวหนังสือ ตามหลักนั้นๆ |
จากคุณ
:
sup98 [2006-11-23 00:06:23]
|
|
ความคิดเห็น #25104 (จาก IP: 203.144.197.178)
Function Thai_Amount(ByVal Amount As Currency) As String Dim T_Amt As String Dim Amt_St As String Dim Amt_Baht As String Dim Amt_Stang As String Dim Dot_Pos As Integer If Amount = 0 Then Thai_Amount = "ศูนย์บาทถ้วน" Exit Function ElseIf Amount < 0 Then T_Amt = "ลบ" Amount = Abs(Amount) Else T_Amt = "" End If
Amt_St = Format$(Amount, "0.00") Dot_Pos = InStr(Amt_St, ".") Amt_Baht = Mid$(Amt_St, 1, Dot_Pos - 1) Amt_Stang = Mid$(Amt_St, Dot_Pos + 1, Len(Amt_St) - Dot_Pos)
Amt_Baht = Thai_Number(Amt_Baht) If Amt_Baht <> "" Then T_Amt = T_Amt + Amt_Baht + "บาท" End If
Amt_Stang = Thai_Number(Amt_Stang) If Amt_Stang = "" Then T_Amt = T_Amt + "ถ้วน" Else T_Amt = T_Amt + Amt_Stang + "สตางค์" End If
Thai_Amount = T_Amt End Function
Function Thai_Number(ByVal Amt_St As String) As String Dim T_Amt, Digit_St As String Dim Num_Digit As Integer
Amt_St = Trim$(Amt_St) If (Not IsNumeric(Amt_St)) Or (Len(Amt_St) > 13) Then Thai_Number = "**********" Exit Function End If
T_Amt = "" While (Len(Amt_St) > 0) Digit_St = Left$(Amt_St, 1) Num_Digit = Len(Amt_St) Select Case Digit_St Case "1" Select Case Num_Digit Case 1, 7 If Right$(T_Amt, 3) = "สิบ" Then T_Amt = T_Amt + "เอ็ด" Else T_Amt = T_Amt + "หนึ่ง" End If Case 2, 8 'Nothing Case Else T_Amt = T_Amt + "หนึ่ง" End Select Case "2" Select Case Num_Digit Case 2, 8 T_Amt = T_Amt + "ยี่" Case Else T_Amt = T_Amt + "สอง" End Select Case "3" T_Amt = T_Amt + "สาม" Case "4" T_Amt = T_Amt + "สี่" Case "5" T_Amt = T_Amt + "ห้า" Case "6" T_Amt = T_Amt + "หก" Case "7" T_Amt = T_Amt + "เจ็ด" Case "8" T_Amt = T_Amt + "แปด" Case "9" T_Amt = T_Amt + "เก้า" End Select
If Digit_St <> "0" Or Num_Digit = 7 Then Select Case Num_Digit Case 2, 8 'หลักสิบ, หลักล้าน T_Amt = T_Amt + "สิบ" Case 3, 9 'หลักร้อย, ร้อยล้าน T_Amt = T_Amt + "ร้อย" Case 4, 10 'หลักพัน, พันล้าน T_Amt = T_Amt + "พัน" Case 5, 11 'หลักหมื่น, หมื่นล้าน T_Amt = T_Amt + "หมื่น" Case 6, 12 'หลักแสน, แสนล้าน T_Amt = T_Amt + "แสน" Case 7, 13 'หลักล้าน, ล้านล้าน T_Amt = T_Amt + "ล้าน" End Select End If Amt_St = Right$(Amt_St, Num_Digit - 1) Wend
Thai_Number = T_Amt End Function
Sub Form_Load()
Text1.MaxLength = 12 Text1.Text = "" End Sub
Sub Text1_Change() Label1.Caption = Thai_Amount(Val(Format$(Text1.Text, "0.00"))) End Sub
Sub Text1_KeyPress(KeyAscii As Integer) 'กำหนดให้ Text Box รับค่าเป็นตัวเลขอย่างเดียว If InStr("0123456789." + Chr$("13") + Chr$("8"), Chr$(KeyAscii)) = 0 Then KeyAscii = 0 End If Select Case KeyAscii Case 13 Label1.Caption = Thai_Amount(Val(Format$(Text1.Text, "0.00"))) End Select End Sub
|
จากคุณ
:
NN / au_rattikan@hotmail.com [2006-11-23 09:11:20]
|
|
ความคิดเห็น #25119 (จาก IP: 222.123.44.71)
ขอบคุณ คุณ NN มากเลยครับ ความจริงผมใช้ Delphi แต่ได้แค่นี้ ที่เหลือก็ไม่ยากแล้ว ขอบคุณอีกครั้งนะครับ |
จากคุณ
:
Kabode / sontaya_pc@hotmail.com [2006-11-24 22:46:18]
|
|
ความคิดเห็น #26753 (จาก IP: 203.113.118.7)
อยากได้sourcecodeระบบร้านเช่าvcdของโปรแกรมdelphiค่ะ |
จากคุณ
:
plubphung / mooping_love@hotmail.com [2008-05-14 11:27:43]
|
|
|
- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -
|
|
|
|
|