กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
315 4
URL.หัวข้อ /
URL
ช่วยผมด้วยครับ
ผมหัดใช้ แมโคร แล้วติดปัญหา Error ของแมโคร ตรง FindID ผมต้องกำหนดตอนLoad เป็น 0 แล้วถ้าเกิดผมลบเลข 0 ออกไปแล้วกด FindFirst จะเกิดError ขึ้นมา อยากถามวิธีการแก้ตรงนี้ครับ แล้วถ้าเกิดเขียนเป็น Code ตรง On Click Frame1 จะใช้ Code อะไรครับ
4 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R01993
ขอเปลี่ยนครับ On Click ของ FindFirst และ FindNext คับ จากเดิมที่เป็นแมโคร แล้วถ้าเป็น Code จะเขียนโดยใช้คำสั่งรูปแบบไหนครับ
2 @R02012
สวัสดีครับอ.และเพื่อน access ผมช่วยดูให้ผมด้วยครับ ผมลองใช้ Filter code แทนการใช้แมโคร แล้วติดปัญหาอีกแล้วครับ ตรง > Me.Filter = "[Material] Like '" & FindID & "*'" จะรับค่าเริ่มจากตัวแรกเท่านั้น คือถ้าเลข Material = 3000324 ผมต้องกรอกเป็น 30003 อะไรอย่างนี้ถึงจะได้ข้อมูล ผมต้องเปลี่ยนตรงไหนครับถึงจะลงเลขตัวท้ายได้ เช่น 324 แล้วได้ข้อมูลออกมา ที่ต้องทำอย่างนี้เพราะตรง Matdescription จะเป็นข้อมูลที่ค้นได้ง่าย user บางท่านจะรู้จักเฉพาะคำบางคำเท่านั้น ครับ Filter ขอบคุณครับ
Private Sub Command29_Click()
If IsNull(FindID) Then
MsgBox "ระบุสิ่งที่ต้องการค้นหา ! " & vbCrLf & " ในช่อง FindID ก่อนครับ ", 32, "FindID"
End If
On Error GoTo cmd29_err_Click
Select Case Frame1
Case 1
Me.Filter = "[Material] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Material.SetFocus
DoCmd.GoToRecord , , acFirst
Case 2
Me.Filter = "[Location] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Location.SetFocus
DoCmd.GoToRecord , , acFirst
Case 3
Me.Filter = "[Matdescription] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Matdescription.SetFocus
DoCmd.GoToRecord , , acFirst
End Select
Exit Sub
cmd29_err_Click:
MsgBox " ติดต่อผู้ดูแลระบบ", 64, "Error "
Exit Sub
End Sub
...........................................................................
Private Sub Command30_Click()
On Error GoTo cmd30_err_Click
DoCmd.GoToRecord , , acNext
Select Case Frame1
Case 1
Me.Material.SetFocus
Case 2
Me.Location.SetFocus
Case 3
Me.Matdescription.SetFocus
End Select
Exit Sub
cmd30_err_Click:
MsgBox " ตอนี้คุณอยู่ที่ข้อมูลสุดท้ายแล้วครับ", 32, "Record"
Exit Sub
End Sub
..............................
Private Sub Command29_Click()
If IsNull(FindID) Then
MsgBox "ระบุสิ่งที่ต้องการค้นหา ! " & vbCrLf & " ในช่อง FindID ก่อนครับ ", 32, "FindID"
End If
On Error GoTo cmd29_err_Click
Select Case Frame1
Case 1
Me.Filter = "[Material] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Material.SetFocus
DoCmd.GoToRecord , , acFirst
Case 2
Me.Filter = "[Location] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Location.SetFocus
DoCmd.GoToRecord , , acFirst
Case 3
Me.Filter = "[Matdescription] Like '" & FindID & "*'"
Me.FilterOn = True
Me.Matdescription.SetFocus
DoCmd.GoToRecord , , acFirst
End Select
Exit Sub
cmd29_err_Click:
MsgBox " ติดต่อผู้ดูแลระบบ", 64, "Error "
Exit Sub
End Sub
...........................................................................
Private Sub Command30_Click()
On Error GoTo cmd30_err_Click
DoCmd.GoToRecord , , acNext
Select Case Frame1
Case 1
Me.Material.SetFocus
Case 2
Me.Location.SetFocus
Case 3
Me.Matdescription.SetFocus
End Select
Exit Sub
cmd30_err_Click:
MsgBox " ตอนี้คุณอยู่ที่ข้อมูลสุดท้ายแล้วครับ", 32, "Record"
Exit Sub
End Sub
..............................
3 @R02013
เปลี่ยนเป็น
Me.Filter = "[Material] Like '*" & FindID & "*'"
Me.Filter = "[Material] Like '*" & FindID & "*'"
4 @R02014
ขอบคุณครับอ.สุภาพ ผมลองนั่งเปลี่ยนไปเปลี่ยนมาตั้งนานสองนาน ไม่นึกเลยครับว่าจะเป็นแบบนี้ ขอบคุณอ.อีกครั้งครับ
Time: 0.7676s