เปลี่ยนตัวอักษรตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่
กระทู้เก่าบอร์ด อ.Yeadram

 2,372   3
URL.หัวข้อ / URL
เปลี่ยนตัวอักษรตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่

เรียนอาจารย์ทุกท่าน
ใน Access 2010 ลองใช้สูตรเปลี่ยนตัวอักษรตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่ในฟิลด์ text0 บน form ดังนี้

Private Sub Text0_KeyPress(KeyAscii As Integer)
    KeyAscii = AscW(UCase(ChrW(KeyAscii)))
End Sub

ถ้าทำในไฟล์ใหม่ที่ไม่มีข้อมูลมาก่อนสามารถใช้สูตรนี้ได้ แต่พอใส่สูตรในไฟล์เก่าที่มีข้อมูลปนกันทั้งภาษาไทยและอังกฤษทำไมถึงทำไม่ได้คะ
ขอบคุณคะ

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

1 @R18849
อื่มก็เป็นเพราะฟังก์ขั่นคุณจะกระทำต่อเมื่อคุณกดคีย์บอร์ดอ่ะครับ แต่ข้อมูลเก่ามันมีอยู่แล้ว ดังนี้เหตุการณ์ใน KeyPress มันก็ไม่ทำงาน ถึงทำงานฟังก์ชั้นของคุณมันเปลี่ยนที่ละตัวอักษร เปลี่ยนทั้งประโยคไม่ได้

ถ้าคุณอยากเปลี่ยนข้อมูลเก่า ตัวอักษรอังกฤษให้เป็นตัวใหญ่หมดใช่ป่าวครับ คุณใช้ฟังก์ชั่น UCase() อย่างเดียวได้เลยครับ เช่นสมมุติของมูลอยู่ในคอนโทรลชื่อ Text1 คุณก็อาจใส่ในเหตุการณ์ของ Text1 > Event > After Update:

'Private Sub Text1_AfterUpdate()
    Me.Text1 = UCase(Me.Text1)
'End Sub

เท่านี้หลังจากคุณแก้ไขข้อมูลเก่าเสร็จ พอเลื่อนไปที่ คอนโทรลอื่น โปรแกรมก็จะเปลี่ยนตัวอักษร en เป็นตัวใหญ่ทั้งหมด ทั้งข้อมูลเก่าด้วย

ปรับใช้ดูครับ อยู่ที่เราจะว่างโค๊ดไว้ในเหตุการณ์อะไร
2 @R18850
ขอบคุณมากค่ะจะลองทำตามดูนะคะ
3 @R18856
ถ้าจะเปลี่ยนข้อมูลที่มีอยู่แล้วทั้งหมด
ใช้ Query ครับ
Update Table Set Field = UCase(Field)
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2143s