แสดงกระทู้

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 - mivien20

หน้า: [1]
1
ห้อง MS Access / : สอบคำสั่ง Visible
« เมื่อ: 10 มี.ค. 65 , 08:33:27 »
จากโค้ดนี้
Private Sub TWRD_AfterUpdate()

Me.TWRDC = DLookup("[WARDCODE]", "QY_ward_FW")

   ''Call Cmd84_Click
Me.TCtlrRCB = DCount("[LABNO]", "QAshow_Recivest2")
    Me.Requery
msgbox DCount("[LABNO]", "QAshow_Recivest2") 
If Me.TCtlrRCB > 0 Then
    Me.Command81.Visible = True
   Else
   Me.Command81.Visible = False
End If
Me.TWHN.SetFocus
        Me.Refresh
End Sub

ลองเพิ่ม msgbox DCount("[LABNO]", "QAshow_Recivest2") 
ดูหน่อยว่ามันแสดงค่า 0 จริงหรือเปล่า หรือแสดงค่าว่างอยู่
เพราะถ้าแสดงค่าว่าง มันจะไม่เข้าเงื่อนไขด้านล่าง
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

2
ห้อง MS Access / : สอบคำสั่ง Visible
« เมื่อ: 03 มี.ค. 65 , 12:03:11 »
ผมอ่านคำถามแล้วไม่รู้เข้าใจถูกป่าว
คือปุ่มคำสั่งนี้ ใช้กับคอมพิวเตอร์บางตัวได้ บางตัวไม่ได้
หรือ
ในเครื่องเดียวกัน เดี๋ยวได้เดี๋ยวไม่ได้

ถ้าเป็นอันแรก ก็ต้องดู Access ของเครื่องที่ทำได้ และที่ทำไม่ได้ด้วย
ถ้าเป็นอัน 2 ก็ต้องดูเงื่อนไขด้วย ว่าเป็นไปตามเงื่อนไขรึป่าว
เงื่อนไขนี้ If Me.TCtlrRCB > 0 Then
และคำสั่ง Visible ถ้ามี Focus ที่ปุ่มนั้น มันก็ไม่ทำงานนะครับ
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

3
ห้อง MS Access / : สอบคำสั่ง Visible
« เมื่อ: 02 มี.ค. 65 , 14:05:25 »
จากคำสั่งในปุ่ม ไม่เห็นมีคำสั่ง Visible เลยนะครับ

แต่มี Call Cmd49_Click  (ตรงนี้ให้ไปดูที่คำสั่ง Cmd49_Click ด้วย)

DoCmd.OpenForm "TFrmAshow_Recive" นี่ก็เป็นคำสั่งให้เปิดฟอร์มครับ
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

4
น่าจะมีปัญหาที่ตัวโปรแกรม MS Access นะครับ

https://www.errorvault.com/en/troubleshooting/runtime-errors/microsoft/microsoft-access/error-3034_microsoft-access-error-3034

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

5
ขอบคุณนะคะ ตอนนี้ทำได้แล้วค่ะ ด้วยการไปเซ็ท system environment  variables ค่ะ โดยเพิ่มตามภาพค่ะ



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

6
ถ้าข้อมูลระดับแสน/ล้านเรคอร์ด ก็คงประมาณเหมือนเอารถเก๋งไปลากตู้คอนเทนเนอร์ครับ

จากที่เคยใช้งานมาเมื่อนานมาแล้ว เคยทำงานกับข้อมูลระดับนี้โดยวางเอาไว้ใน Oracle แล้วใข้ VB สร้าง UI ความเร็วก็ระดับใช้ได้เลยนะครับ

ซึ่ง VB เนี่ยก็ใกล้เคียงกับ Access ที่สุดแล้วครับ
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

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

8
ในภาษา VBA  เครื่องหมาย double quote เป็น string delimeter เปิด/ปิดสำหรับค่าคงที่ของข้อความ (ในนี้ผมจะใช้สีแดงแล้วกัน) เช่น ค่าคงที่ของข้อความ AB ก็จะต้องสร้างเป็น "AB"   แต่ถ้าค่าคงที่ของข้อความต้องมี double quote อยู่ภายในอยู่ด้วย เช่น A"B  เราต้องใช้ double quote 2 ตัว   VBA จะรู้ว่าจริงๆแล้ว นี่เป็นตัวอักษร double quote เพียงตัวเดียว ไม่ใช่ delimiter  ดังนั้นเราก็ต้องสร้างเป็น "A""B" 


ส่วน string delimeter ในภาษา SQL จะใช้ได้ทั้ง double quote และ single quote  ดังนั้นเมื่อต้องการค่าคงที่ของข้อความ SELECT * FROM Output WHERE [Type] like 'AB' ลงในตัวแปรชื่อ SQL เราก็จะสร้างคำสั่งเป็น SQL = "SELECT * FROM Output WHERE [Type] like 'ABC'" หรือถ้าเราใช้ double quote แทน single quote คำสั่งก็จะกลายเป็น SQL = "SELECT * FROM Output WHERE [Type] like ""ABC"""


ส่วน & คือ operator ที่ใช้เชื่อมข้อความ 2 ข้อความเข้าด้วยกัน เช่น "A" & "B" ก็จะได้ค่าคงที่ของข้อความเป็น AB หรือ "A" & """B""" ก็จะได้เป็น A"B"
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

9
ขอบคุณครับในที่สุดผมก็ใส่ไฟล์เสียงได้แล้ว แต่จะทำยังไงให้มันเล่นเองอัตโนมัติในฟอร์มอะครับ พอกดมันให้เปิดอีกนอกโปรแกรม ช่วยดูในไฟล์ที่ส่งให้ดูหน่อยครับในฟอร์มลูกค้า

[ไฟล์แนบถูกลบโดยผู้ดำเนินการ]
โพสต์นี้ได้รับคำขอบคุณจาก: mivien20

หน้า: [1]