Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ ระบบฐานข้อมูล
Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ การเขียนโปรแกรม
Access : เป็นได้ทั้งตัวเก็บฐานข้อมูล และตัวจัดการฐานข้อมูล
Thai Access : บอร์ดเสริมการเรียนรู้ Access ด้วยภาษาไทย

น้อมรำลึกในพระมหากรุณาธิคุณอันหาที่สุดมิได้ พระบาทสมเด็จพระปรมินทรมหาภูมิพลอดุลยเดชฯ พระผู้เสด็จสู่สวรรคาลัย

Back to Board : Thai Access Webboard New Topic    Reply
สอบถามเรื่องการเปิดบิลใหม่อัตโนมัติครับ

Topic by Message Posted : on : 22/12/2559 17:12:55
ekkaphon  เรียนถามท่านอาจารย์ครับ
ผมขออธิบายรายละเอียดก่อนนะครับ
   หลังจากที่สแกนบาร์โค้ดสินค้าเสร็จ กดปุ่มรับเงิน แล้วระบุจำนวนเงินที่รับมา ระบบจะแจ้งเงินทอน จากนั่้นให้คลิกปุ่มปิดหน้าต่าง แล้วมาคลิกที่ปุุ่มบิลใหม่เพื่อเปิดบิลเลขที่ใหม่ครับ
   ปัญหาอยู่ที่ว่า หลังจากที่เรากดปุ่มปิดหน้าต่างแล้ว ให้ระบบเปิดเลขที่บิลใหม่ทันทีโดยที่เราไม่ต้องไปคลิกที่ปุ่มบิลใหม่ได้หรือไม่ครับ ถ้าได้เขียนโค้ดที่ปุ่มปิดหน้าต่างอย่างไร ตอนนี้โค้ดที่ผมเขียน(สำหรับปุ่มบิลใหม่)คือ

Private Sub Command72_Click()
DoCmd.GoToRecord , , acNewRec
Me.Year = Format(Date, "yymm")
Me.DocNo = "IV" & [Year] & Format(No, "000000")
Me.ฟอร์มย่อย_Query1.Enabled = True
Me.ฟอร์มย่อย_Query1.SetFocus
DoCmd.GoToRecord , , acNewRec
End Sub



7 Reply in this Topic. Dispaly 1 pages and you are on page number 1

Reply by Message on : 22/12/2559 17:56:07
ไพรินทร์
(R22828)
ขออนุญาต ตอบน๊ะครับ ไม่ทราบว่าจะตรงไหม ถ้าไม่ตรงคง รอ อ.สันติสุขครับ ผมมือใหม่
Forms("ชื่อฟอร์มที่มีปุ่มบิลใหม่").SetFocus
Forms("ชื่อฟอร์มที่มีปุ่มบิลใหม่").Command72.SetFocus
    SendKeys "{Enter}", True
    DoEvents
End Sub

ใสเพิ่มในปุ่ม ปิดหน้าต่าง ที่ผมทำประมาณนี้ครับ
Back to Top
Reply by Message on : 22/12/2559 18:47:24
ekkaphon
(R22829)
เรียน คุณไพรินทร์
ขอบคุณมากๆนะครับ
สามารถเปิดเลขที่บิลใหม่ได้ แต่ขึ้น ERR ต้องแก้ตรงใหนครับ ตอนนี้ผมลองเปลี่ยนทุกรูปแบบแล้วยังขึ้นERRครับ




Back to Top
Reply by Message on : 22/12/2559 19:39:04
ไพรินทร์
(R22830)
ผมหมายถึง ให้เอา code ข้างล่างนี้ ไปใส่ใน code ปุ่ม ปิดหน้าต่างก่อน End sub
ไม่ใช่เป็นการสร้างปุ่มขึ้นมาใหม่ครับ

Forms("ชื่อฟอร์มที่มีปุ่มบิลใหม่").SetFocus
Forms("ชื่อฟอร์มที่มีปุ่มบิลใหม่").ชื่อของปุ่มบิลใหม่.SetFocus
    SendKeys "{Enter}", True
    DoEvents

ส่วนชื่อฟอร์มที่มีปุ่ม บิลใหม่ (ที่ในรูป ทำกรอบสีแดง) = ให้ใส่เอง เพราะผมไม่รู้

ชื่อของปุ่มบิลใหม่ คือ ดูจาก property--> name ครับ

ผมใช้ access 2010 ตัวนี้ DoEvents ถ้าเป็น version ก่อนหน้านี้ ผมไม่แน่ใจครับว่าเป็น DoEvent หรือเปล่า
Back to Top
Reply by Message on : 22/12/2559 20:10:01
ekkaphon
(R22831)
ขอบคุณมากนะครับ คุณไพรินทร์ ผมทำตามทุกขั้นตอนแล้ว แต่น่าจะเป็นเพราะผมใช้ access 2003 ผมจะนำข้อมูลที่ได้ไปศึกษาดูครับ
Back to Top
Reply by Message on : 23/12/2559 10:27:12
TTT
(R22832)
จริงๆ ก็นำเอาโค๊ดใน command72 ไปใส่ในปุ่มปิดหน้าต่างรับเงินเลย ก่อนบรรทัด Docmd.Close ก็น่าจะได้แล้วนะครับ เพียงอ้างชื่อฟอร์ม ซับฟอร์มใหม่ให้ถูกต้อง

หรือถ้าง่ายกว่านั้น ก็ลองอย่างนี้ดูครับ
เปลี่ยน Private Sub Command72_Click() เป็น Public Sub Command72_Click() ดังนี้:

Public Sub Command72_Click()
    DoCmd.GoToRecord , , acNewRec
    Me.Year = Format(Date, "yymm")
    Me.DocNo = "IV" & [Year] & Format(No, "000000")
    Me.ฟอร์มย่อย_Query1.Enabled = True
    Me.ฟอร์มย่อย_Query1.SetFocus
    DoCmd.GoToRecord , , acNewRec
End Sub

- ที่ปุ่ม ปิดหน้าต่าง ก็เขียนคำสั่งประมาณนี้ครับ

    Forms!ชื่อฟอร์มหลัก.SetFocus
    Forms!ชื่อฟอร์มหลัก.Command72_Click
    DoCmd.Close acForm, "ชื่อฟอร์มรับเงิน", acSaveNo

ปรับใช้ดูครับ
Back to Top
Reply by Message on : 23/12/2559 13:23:02
ekkaphon
(R22834)
เย้ๆๆๆ ขอบคุณคุณTTT เป็นอย่างมาก และขอขอบคุณคุณไพรินทร์ด้วยนะครับ

ทำได้แล้วครับ
Back to Top
Reply by Message on : 23/12/2559 17:08:24
U&ME
(R22835)
ยินดีด้วยน๊า...
Back to Top

Reply

 *Indicates required fields
Format:
Bold Under Line Italic Add Hyperlink Add Email Link Italic List Indent Add Image Emoticons Insert code Mode:
Message:*
Your Name*:
Normal word*: Please input : ไทยแอ็คเซส
+++ webboard source: ASPThai.Net Webboard 6.0 webbord +++++++ admin : yeadram +++