สมัครสมาชิก
 

access 2003 to windows 10 64 bit



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

03 พ.ย. 62 , 12:33:35
ตอบกลับ #16

สันติสุข

  • แฟนพันธุ์แท้ไท.Access
  • *
  • กระทู้: 355
  • พลังขอบคุณ: 311

  • แยกทิ้งขยะถูกประเภท เทศบาลนำไปกำจัดได้ง่าย

    • ดูรายละเอียด

: access 2003 to windows 10 64 bit
« ตอบกลับ #16 เมื่อ: 03 พ.ย. 62 , 12:33:35 »
ผมตรวจสอบเพิ่มเติมโดยเปิด Access แล้วสร้างเท็กซ์บ็อกซ์ที่มี Format เป็น Short Date  แล้วเปลี่ยนฟอร์แมทของ short date ใน windows taskbar ด้วยมือ  กลับมาที่ Access ก็ยังคง Format เดิมไม่เปลี่ยนตามครับ ต่อให้ Close Database แล้วเปิดใหม่ก็ยังเป็น Format เดิม  ต้องปิด Access ไปเลยแล้วค่อยเปิด Access ใหม่  Format ถึงจะเปลี่ยนตาม 

ผมแนะนำว่า ให้เช็คฟอร์แมทของ Short Date ดีกว่าว่าเป็นไปตามที่เราต้องการหรือไม่ ถ้าไม่ใช่ก็ให้ปิด Access ไป  ให้ผู้ใช้เปลี่ยนด้วยมือเอาเอง วิธีการเช็คก็คือสั่งในโค้ดที่เริ่มต้นของระบบ และเช็คด้วยวันที่ 29 กพ. ค.ศ. 2020
โค๊ด: [Select]
If format$(DateSerial(2020,2,29),"Short Date")  <> "29/02/2020" Then
   MsgBox แจ้งให้ผู้ใช้ไปเปลี่ยนฟอร์มแมทเองก่อน
   Application.Quit
End If
ช่วยพกถุงผ้า/ถุงพลาสติกไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

04 พ.ย. 62 , 08:47:45
ตอบกลับ #17

nonc31

: access 2003 to windows 10 64 bit
« ตอบกลับ #17 เมื่อ: 04 พ.ย. 62 , 08:47:45 »
Control Panel > Region >Formate ต้องเป็น Thai (Thailand) Currnet language ต้องเป็น Thai (Thailand)

Option Compare Database
      Private Const LOCALE_SSHORTDATE = &H1F
      Private Const WM_SETTINGCHANGE = &H1A
      Private Const HWND_BROADCAST = &HFFFF&
#If VBA7 Then
      Private Declare PtrSafe Function SetLocaleInfo Lib "kernel32" Alias "SetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String) As Boolean
      Private Declare PtrSafe Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
      Private Declare PtrSafe Function GetSystemDefaultLCID Lib "kernel32" () As Long
#Else
      Private Declare Function SetLocaleInfo Lib "kernel32" Alias "SetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String) As Boolean
      Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
      Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
#End If
     
Function setdate() 'ใช้เปลี่ยนรูปแบบวันที่
    Dim dwLCID As Long
            dwLCID = GetSystemDefaultLCID()
           
        If SetLocaleInfo(dwLCID, LOCALE_SSHORTDATE, "dd/MM/yyyy") = False Then
            MsgBox "รูปแบบวันที่ไม่ใช่ dd/MM/yyyy", vbCritical, "Error"
        End If
            PostMessage HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0
End Function

กระทู้ถามว่าไงเนี๊ย   :shout: :shout: :shout:
« แก้ไขครั้งสุดท้าย: 04 พ.ย. 62 , 08:52:21 โดย nonc31 »

 
โพสต์นี้ได้รับคำขอบคุณจาก: sjs


บอร์ดเรียนรู้ Access สำหรับคนไทย