สมัครสมาชิก

แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - UnKnown

หน้า: [1] 2 3 ... 6
1
รบกวนเพิ่มเติมครับ...
ได้นำคำแนะนำทั้งหมดมาลงทำงานในตารางโดยผ่านฟอร์ม...ปรากกฏว่า..ฟอร์มกับตารางไม่ค่อยจะสัมพันธ์กัน...พิมพ์ข้อมูลบนฟอร์มแต่ไม่ปรากฏในตารางต้องปิดตารางแล้วเปิดมาใหม่จึงจะปรากฏข้อมูล...ไม่ทราบผิดพลาดตรงไหนครับ

ติดตามต่อได้ที่กระทู้นี้เน้อ > การบันทึกข้อมูลลงตารางจากการใช้แบบฟอร์ม

2
อ้างถึง
ไม่ให้ช่องภูมิภาคเป็นช่องหลัก , เลือกจังหวัดเสร็จ > ช่องภูมิภาคขึ้นมาให้เลย
ผมขออนุญาตนำไฟล์ของ อ.ปิ่นณรงค์ ไปแก้นะครับ โดย
• เปลี่ยนช่องเลือกภาค(Cb_geography) เป็น TextBox
• จังหวัด
  - column count = 3 , column widths = 0cm;2cm;0cm
  - Data > Row Source =
โค๊ด: [Select]
SELECT tb_province.province_id, tb_province.Province_th, tb_geography.GEO_NAME FROM tb_province INNER JOIN tb_geography ON tb_province.geo_id = tb_geography.GEO_ID;
  - VB ในส่วนของ cb_province_AfterUpdate เพิ่ม     
โค๊ด: [Select]
Me.Cb_geography = cb_province.Column(2)
ปล.ผมก็...เอาอ่านะลองดูจากไฟล์เลยครับ :prettiness:

3
ห้อง MS Access / : การใช้คำสั่ง iifซ้อน iif
« เมื่อ: 09 ธ.ค. 61 , 13:21:46 »
ต้องใส่ลูกน้ำคั่นวงเล็บปิดด้วยใหมครับนั้น ตย.ที่ผมใช้ =IIf([do_T15]=True,IIf([15_ราคา2]<>"",[15_ราคา2]+[15_ราคา],"0"),"0")
ปล.ถ้าใช้ ),),),),),),),),),),) คือมันไม่มีอะไรอยู่ข้างในมันจะแปลงร่างให้เป็น ))))))))))) ตามเดิมอยู่ดี ลองเป็น ,[%Efficiancy]),[%Efficiancy]),... แทนดูได้ใหมครับ :sweat:

โค๊ด: [Select]
Eff20Auto:
IIf(Not IsNull([Eff20]),[Eff20],
IIf(Not IsNull([Eff19]),[Eff19],
IIf(Not IsNull([Eff18]),[Eff18],
IIf(Not IsNull([Eff17]),[Eff17],
IIf(Not IsNull([Eff16]),[Eff16],
IIf(Not IsNull([Eff15]),[Eff15],
IIf(Not IsNull([Eff14]),[Eff14],
IIf(Not IsNull([Eff12]),[Eff12],
IIf(Not IsNull([Eff11]),[Eff11],
IIf(Not IsNull([Eff10]),[Eff10],
IIf(Not IsNull([Eff9]),[Eff9],[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])
,[%Efficiancy])

4
ขอแนะนำนอกเรื่องว่า"พยายามไม่ตั้งชื่อกล่องข้อความหรืออะไรก็แล้วแต่เป็นภาษาไทยนะ" :prettiness:

(มือใหม่) อ่านซักนิดถ้าคิดจะใช้ Access ตอนที่ 1- ภาษาไทยใน Access By อ.OddyWriter

5
ฟอนต์ calibri ที่ผมมี ลองเอาไปลงทับทุกเครื่องดูครับ :shout:
หรือจะแบ่งไฟล์อัพมาให้ดูกันว่าใครลองเปิด+ลองปริ้นแล้วเป็นอย่างไรก็ดีนะ :smile:

6
จากรูปนี้ ในสายตาผมมองเห็นว่ามันใช้คนล่ะฟอนต์กันนะ ลองก๊อปฟอนต์ทั้งหมดไปลงอีกเครื่องดูครับ / หรือจะแก้ฟอร์มใหม่ให้ใช้ฟอนต์มาตรฐานที่คิดว่ามีทุกเครื่องก็จะดีนะ



เรื่องเวลา เป็นที่การตั้งค่าเวลาของเครื่องนั้นๆครับ หรือไม่ก็ต้องใช้วิธีเขียนมาโครตรวจสอบแล้วแก้ให้เมื่อปริ้นออกมาแล้วเป็นอย่างใดอย่างหนึ่งตรงกัน(อาจอธิบายไม่เก่ง ลองหาวิธีในเว็บนี้ดูครับ)

8
ทดสอบเปลี่ยนเดือน เลขสามตัวท้ายไม่กลับไปเริ่มนับ 001 นะครับ (ฉบับมาโครก็เช่นเดียวกัน)

  RunnungNum    myDate    Data 
  6107001   26-07-18    11
  6107002   26-07-18    22
  6108003   01-08-18    33
  6108004   01-08-18    44
  6109005   01-09-18    55
  6109006   01-09-18    66

9
ขอขอบคุณท่านปิ่นณรงค์ครับ :love: ใช้ได้สมบูรณ์ตรงตามเป๋าหมาย
ขอบคุณ อ.OddyWriter ด้วยครับ(จากมาโครเล็กๆ ต่อความมาซะยาวเลยนะนี่เรา :nice day:)
ขอบคุณ.preechaaesanan คุณ.Kxess ครับสำหรับแนวทางเพิ่มเติม :slobber:

10
ขออภัยด้วยครับ ที่ผมอยากให้มีผลคือเลข RunnungNum นะครับ
ตัวอย่าง
  รูปแบบเวลาของคอมพิวเตอร์    แสดงบน txtDate    RunnungNum  
Thailand
25-07-61
6107xxx
English
25-07-18
6107xxx

หรือก็คืออยากให้ RunnungNum เป็นปี พ.ศ.(61...)ไม่ว่าเครื่องๆนั้นจะใช้เวลาแบบใดนะครับ

11
สอบถามเพิ่มเติมครับ
"ทำอย่างไรให้ตรวจสอบว่าเครื่องๆนั้นใช้ปี ค.ศ. หรือ พ.ศ. ถ้าใช้ปี ค.ศ. ก็ให้บวกเป็นปี พ.ศ." เพื่อให้เลขที่บิลที่ออกมาไปแนวทางเดียวกันนะครับ
ปล.พยายามเอาโมดูลมาใช้กลับไปไม่เป็นซะงั้น :spook:
โค๊ด: [Select]
Public Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
Public Declare Function GetLocaleInfo Lib "kernel32" _
   Alias "GetLocaleInfoA" _
(ByVal Locale As Long, _
   ByVal LCType As Long, _
   ByVal lpLCData As String, _
   ByVal cchData As Long) As Long

Public Function GetUserLocaleInfo(ByVal dwLocaleID As Long, ByVal dwLCType As Long) As String
   Dim sReturn As String
   Dim r As Long
   r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
   If r Then
      sReturn = Space$(r)
      r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
      If r Then GetUserLocaleInfo = Left$(sReturn, r - 1)
   End If
End Function

Public Function mYear(ByVal yourDate As Date) As Long
    mYear = Year(yourDate)
    If GetUserLocaleInfo(GetSystemDefaultLCID(), &H1009) = 7 Then mYear = Year(yourDate) - 543
End Function

Public Function bYear(ByVal yourDate As Date) As Long
    bYear = Year(yourDate)
    If GetUserLocaleInfo(GetSystemDefaultLCID(), &H1009) <> 7 Then bYear = Year(yourDate) + 543
End Function
เครดิต อาจารย์ TTT อ.yeadram อาจารย์ PichaiTC เช่นกันครับ

12
เป็นที่เครื่องจริงๆเอาไฟล์กลับไปใช้ที่บ้านใช้ได้ซะงั้น   :sweat:
เดี๋ยวพรุ้งนี้กลับไปแก้เครื่องเจ้าปัญหาตามท่าน OddyWriter อีกที :dizzy:


เปลี่ยนรูปแบบวันที่ของเครื่องที่ใช้จากแสดงชื่อเดือนด้วยตัวอักษร  เป็น--> แสดงชื่อเดือนเป็นตัวเลขสองหลัก = ใช้งานได้แล้วครับ  :fake smile:

13
ยังคงใช้ไม่ได้ครับ
เห็นฟ้อง 'Jul' หรือเป็นที่เครื่องผมตั้งค่าเวลาเป็นอังกฤษ ต้องแก้อย่างไรโดยยังคงรูปแบบเวลาใว้ครับนี่



14
จากไฟล์ตัวอย่างไหงผมรันแมโครไม่ได้ครับนี่ (เปิดใช้งานแมโครทั้งหมด by access 2013 แล้ว)


15
ห้อง MS Access / : การ run number โดยไม่ใช้ autonumber
« เมื่อ: 28 มิ.ย. 61 , 11:55:49 »
หรือลองดูแนวทางครับ ผลการค้นหา AutoNo = Format

16
Nz คือฟังก์ชั่นในการกำหนดว่าเมื่อค่าในตัวแปลที่1 มีค่าเท่ากับ Null หรือก็คือว่างไม่มีค่าอะไรเลยให้มีค่าเท่ากับตัวแปลที่2

ดังนั้น Nz(Me.Amount, 0) จึงเป็นการกำหนดว่าเมื่อ Me.Amount ว่างให้มีค่าเท่ากับ 0

หมายเหตุ ทุกการคำนวนของโปรแกรมต้องมีค่า จะมา 1+2+Null+4 ไม่ดี,ไม่ควร(หรือจะใช้ไม่ได้ด้วยซ้ำไปครับ) :dizzy: 
            เมื่อใช้ Nz มาช่วยจะกลายเป็น 1+2+0+4 โปรแกรมจึงจะหาผลลัพธ์(=7)ให้ครับ
            หรือจะเอาไปประยุกต์ใช้อย่างอื่นนอกเหนือจากแนวคำนวนก็ได้นะ https://www.techonthenet.com/access/functions/advanced/nz.php link

หน้า: [1] 2 3 ... 6