กระทู้เก่าบอร์ด อ.Yeadram
1,319 1
URL.หัวข้อ /
URL
การแสดงจุดทศนิยมและจัดกึ่งกลางใน Listbox
อยากรู้วิธีจัดกึ่งกลางคอลัมน์ใน Listbox ครับต้องทำอย่างไร และการให้แสดงจุดทศนิยมด้วยครับ
1 Reply in this Topic. Dispaly 1 pages and you are on page number 1
Time: 0.3484s
แยกเป็นสองประเด็น
1 การแสดงจุดทศนิยม
คุณต้องกำหนด format ของแหล่งข้อมูลให้แสดงผลเป็น standard ต้องกำหนดในแหล่งข้อมูลครับ
2 การจัดกึ่งกลาง
อันนี้ทำยากครับ ปกติมันจัดซ้ายตลอด ผมเคยต้องการจัดขวาในคอลัมภ์ที่แสดงจำนวนเงิน ผมต้องเขียนโค้ดเป็นฟังก์ชั้นต่างหากเลยครับ แต่จัดกึงกลางนี ดูท่าจะยากเอาการครับ
ตัวอย่างการจัดขวา (อ.สุภาพ สอนให้ครับ)
- เขียนฟังก์ชั่นในโมดูล
Public Function formatRightList(YourDBL As Double, YourColLen As Integer) As String
' using on both of form and query
formatRightList = String(YourColLen - Len(Format(YourDBL, "Standard")), " ") & Format(YourDBL, "Standard")
End Function
ตัวอย่างการนำไปใช้
ตัวอย่างที่ 1
sql = "SELECT Sale.Date, Sale.Invoice, formatrightlist(cdbl(Sale.Inc),12)"
sql = sql & " FROM Sale LEFT JOIN RVinvoice ON Sale.Invoice = RVinvoice.Invoice"
sql = sql & " WHERE (((RVinvoice.Invoice) Is Null) And (sale.cust like '" & tCust & "')) ORDER BY " & srt
ListInvAR.RowSource = sql
ตัวอย่างที่ 2
Sub ListRV_Show(Optional srt = "Sale.Invoice")
Dim rs As New ADODB.Recordset
sql = "SELECT RVinvoice.Invoice, formatrightlist(cdbl(Sale.Inc),12)" _
& " FROM RVinvoice INNER JOIN Sale ON RVinvoice.Invoice = Sale.Invoice" _
& " Where RVinvoice.ARNo like '" & tRVNo & "' ORDER BY " & srt
rs.Open sql, CurrentProject.Connection, adOpenStatic, adLockPessimistic
ListInvRV.RowSourceType = "Value List"
ListInvRV.RowSource = ""
Do While rs.EOF = False
ListInvRV.AddItem rs(0) & ", """ & formatRightList(rs(1), 12) & ""","
ListInvRV.RemoveItem ListInvRV.ListCount - 1
rs.MoveNext
Loop
rs.Close
End Sub