กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
325 2
URL.หัวข้อ /
URL
จะรีเฟรท Subform หรือส่งค่าจาก Dialog Form ได้อย่างไรครับ
ต้องการส่งค่าข้ามฟอร์ม โดยให้คลิกจากฟอร์มที่เปิดแบบได้ Dialog
คำสั่งที่อยุ่บนฟอร์ม Dialog มีประมาณ 15 ปุ่ม
แต่ละปุ่ม เมื่อคลิกให้ส่งค่าประจำแต่ละปุ่ม 1,2,3,4.......15 ไปที่บน [Forms]![m_main]![m_sub]
แต่มีปัญหามันจะส่งค่าได้แค่ป่มเดียวต่อการเปิดฟอร์ม Dialog 1 ครั้ง (ถ้าเปิด 1 ครั้งก็คลิกส่งข้อมูลเพิ่มได้แค่เรคคอร์ดเดียว)
ถ้าเกิดคลิกมากกว่า 1 ปุ่มจะมี Error สีเหลืองที่บรรทัด DoCmd.RunCommand acCmdRecordsGoToNew
*** หมายเหตุคงเป็นเพราะ [Forms]![m_main]![m_sub] ไม่ยอมรีเฟรท
โค๊ดที่ผมเขียนจะเหมือนกันทุกปุ่มเพียงแต่เปลี่ยนค่าประจำแต่ละปุ่ม 1,2,3,4....,15
Private Sub cmd1_Click()
On Error Resume Next
[Forms]![m_main]![m_sub].SetFocus
DoCmd.RunCommand acCmdRecordsGoToNew
Form_m_sub.list_duty.Value = 1 'ค่าที่ส่ง
Text10.SetFocus
cmd1.Enabled = False
End Sub
Private Sub cmd2_Click()
On Error Resume Next
[Forms]![m_main]![m_sub].SetFocus
DoCmd.RunCommand acCmdRecordsGoToNew
Form_m_sub.list_duty.Value = 2 ค่าที่ส่ง
Text10.SetFocus
cmd2.Enabled = False
End Sub
ไม่ทราบจะเขียนโค๊ดให้ [Forms]![m_main]![m_sub] รีเฟรทเพื่อที่จะส่งค่าใหม่มากกว่า 1ปุ่ม / การเปิด 1 ครั้ง
*** ผมลองสร้างปุ่ม 15 ปุ่มบนเมนฟอร์มและใช้โค๊ดเดียวกัน รันได้ทุกปุ่มไม่เป็นปัญหา
แต่ทำไมเวลาส่งจาก Dialog Form ทำไมไม่ได้ครับ
ขอบคุณล่วงหน้าครับ
คำสั่งที่อยุ่บนฟอร์ม Dialog มีประมาณ 15 ปุ่ม
แต่ละปุ่ม เมื่อคลิกให้ส่งค่าประจำแต่ละปุ่ม 1,2,3,4.......15 ไปที่บน [Forms]![m_main]![m_sub]
แต่มีปัญหามันจะส่งค่าได้แค่ป่มเดียวต่อการเปิดฟอร์ม Dialog 1 ครั้ง (ถ้าเปิด 1 ครั้งก็คลิกส่งข้อมูลเพิ่มได้แค่เรคคอร์ดเดียว)
ถ้าเกิดคลิกมากกว่า 1 ปุ่มจะมี Error สีเหลืองที่บรรทัด DoCmd.RunCommand acCmdRecordsGoToNew
*** หมายเหตุคงเป็นเพราะ [Forms]![m_main]![m_sub] ไม่ยอมรีเฟรท
โค๊ดที่ผมเขียนจะเหมือนกันทุกปุ่มเพียงแต่เปลี่ยนค่าประจำแต่ละปุ่ม 1,2,3,4....,15
Private Sub cmd1_Click()
On Error Resume Next
[Forms]![m_main]![m_sub].SetFocus
DoCmd.RunCommand acCmdRecordsGoToNew
Form_m_sub.list_duty.Value = 1 'ค่าที่ส่ง
Text10.SetFocus
cmd1.Enabled = False
End Sub
Private Sub cmd2_Click()
On Error Resume Next
[Forms]![m_main]![m_sub].SetFocus
DoCmd.RunCommand acCmdRecordsGoToNew
Form_m_sub.list_duty.Value = 2 ค่าที่ส่ง
Text10.SetFocus
cmd2.Enabled = False
End Sub
ไม่ทราบจะเขียนโค๊ดให้ [Forms]![m_main]![m_sub] รีเฟรทเพื่อที่จะส่งค่าใหม่มากกว่า 1ปุ่ม / การเปิด 1 ครั้ง
*** ผมลองสร้างปุ่ม 15 ปุ่มบนเมนฟอร์มและใช้โค๊ดเดียวกัน รันได้ทุกปุ่มไม่เป็นปัญหา
แต่ทำไมเวลาส่งจาก Dialog Form ทำไมไม่ได้ครับ
ขอบคุณล่วงหน้าครับ
2 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R02867
ลองเปลี่ยนเป็น
[Forms]![m_main]![m_sub].form.refresh
หรือ
[Forms]![m_main]![m_sub].form.requery
ดูครับ
[Forms]![m_main]![m_sub].form.refresh
หรือ
[Forms]![m_main]![m_sub].form.requery
ดูครับ
Time: 0.1759s
ผมใช้ [Forms]![m_main]![m_sub].refresh แต่ไม่ได้ครับมันขึ้นว่า ไม่ Support คำส่งนี้
ไม่ทราบว่าคำสั่งที่ถูกต้อง เขียนแบบใหนครับ