การแสดงจุดทศนิยมและจัดกึ่งกลางใน Listbox
กระทู้เก่าบอร์ด อ.Yeadram

 1,319   1
URL.หัวข้อ / URL
การแสดงจุดทศนิยมและจัดกึ่งกลางใน Listbox

อยากรู้วิธีจัดกึ่งกลางคอลัมน์ใน Listbox ครับต้องทำอย่างไร และการให้แสดงจุดทศนิยมด้วยครับ

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

1 @R03268
listbox ที่เป็นคอนโทรลแถมมากับ Access ค่อนข้างจะปรับแต่งรูปแบบยากครับ

แยกเป็นสองประเด็น
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
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3484s