ถามเรื่อง กดEnter2ครั้ง ในช่องProductID
กระทู้เก่าบอร์ด อ.Yeadram

 1,663   9
URL.หัวข้อ / URL
ถามเรื่อง กดEnter2ครั้ง ในช่องProductID

รบกวนอีกแล้วนะครับผม

คือผมมีMainFormชื่อ Form01(ใช้ใส่รายละเอียดนิดหน่อยพวกDate,PersonID,EmployeeIDประมาณนี้)
และSubForm02 (อยู่ในส่วนรายละเอียดของForm01) (ใช้ใส่รายละเอียดพวกรายการสินค้าที่ขาย)
โดย
ปรกติตอนนี้ (ที่Form02(SubForm)) เวลาที่ลงProductIDและจำนวนเข้าไปแล้ว ก็จะมาที่Recordต่อไป นั่นคือไปตั้งต้นที่ProductIDใหม่ แต่ทีนี้เวลาที่ลืมในบางครั้งคือ ดันไปกดEnterผ่านProductIDมา แต่จริงๆแล้วไม่อยากลงรายการแล้ว (ถึงช่วงนี้จะมีรูปดินสอ ขึ้นแทนหัวลูกศร ซึ่งต้องลงรายการ แต่ก็แก้ไขได้โดยการกด Esc ซึ่งมันดูไม่ค่อยจะดี และกลัวว่าจะมีอะไรผิดพลาดในภายหลังครับ) แต่ต้องการคิดเงินแล้ว ก็คือกด ปุ่มCtrlแช่แล้วกดปุ่มTab แล้วไปช่องใส่จำนวนเงินรับ(TxtCash)(อยู่ในส่วนรายละเอียดของForm01ที่เป็นMainForm) ประมาณนี้ครับ

เลยอยากถามว่า หากต้องการที่จะใช้วิธีกด Enter2ที
โดยที่เมื่อ ฟิล์ดProductID(ที่From02ในSubForm ที่อยู่ในส่วนรายละเอียดของ Form01ที่เป็นMainForm)ถ้ามีค่าว่าง หรือไม่ลงรายการ
ก็ให้เคอเซอร์ ย้ายไปอยู่ที่ช่องใส่จำนวนเงินรับ(TxtCash ที่อยู่ในส่วนรายละเอียดของForm01ที่เป็นMainForm)เลย จะต้องทำอย่างไรครับ

คือประมาณว่า ถ้ากดEnter2ทีที่ProductIDถ้ามันว่างปุ๊บ = กดปุ่ม ปุ่มCtrlแช่แล้วกดปุ่มTab เพื่อไปยัง ช่องใส่จำนวนเงินรับ(TxtCash)(อยู่ในส่วนรายละเอียดของForm01ที่เป็นMainForm) น่ะครับ

ขอบคุณครับ

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

1 @R03636
เพิ่มเติมครับ
คือกดEnter ครั้งแรก ประมาณว่าให้มันเช็คว่าเป็นค่าว่าง หรือไม่ได้ลงจริง แต่เคอเซอรืยังอยู่ที่เดิม(ProductID)
จึงกดEnterอีกทีให้มันย้ายไปที่ช่องใส่จำนวนเงินรับเลยครับ
2 @R03640
dim entProduct as integer
form_load()
entProduct=0
end sub

productid_keydown()

if keycode=13 then
cmd1=cmd1+1
if productid="" and cmd1=1 then
productid.setfocus
else
forms("Form01").controls("txtCash").setfocus
end if
end if
end sub

อิอิ มั่วๆ เอา เผื่อจะตรงประเด็นบ้าง งานนี้มันแปลกๆ ดี หุหุ
3 @R03645
ขอบคุณครับ เดี๋ยวเอาไปลองครับ เดี๋ยวมาแจ้งผลนะครับ
4 @R03647
ลองดูแล้วก็ งงๆ น่ะครับ แล้วก็ทำไม่ได้ แหะๆ
เอาแบบนี้ได้มั๊ยครับ เอาแค่

ถ้า ProductID(ที่เป็นCombo) เมื่อมีค่าน้อยกว่า1 ก็ให้มันกดแล้วไม่ย้ายไปฟิล์ดต่อไป(Quantity)ก็ได้ครับ ให้มันแช่อยู่ตรงนั้น กดEnter กี่ที ก็ไม่ให้มันไปไหนอ่ะครับ
ขอบคุณครับ
5 @R03648
ตอนนี้ผมใช้แบบนี้ก้ไม่ได้ครับ

Private Sub ProductID_Enter()
If ProductID < 1 Then
ProductID.SetFocus
End If
End Sub
6 @R03649
อันบนไม่ผิดครับ ใช้อันนี้ครับ ที่ทำไม่ได้

Private Sub ProductID_Enter()
If ProductID < 1 Then
ProductID.SetFocus
End Sub

แก้ยังไงดีครับ
7 @R03650
แบบนี้ มันใกล้เคียงผมไหมก็ไม่รู้ เดี๋ยวผมจะลองๆดูครับ แต่อยากให้อาจารย์ช่วยบอกทีครับ ว่าโค๊ตแนวๆนี้ พอจะแก้มาใช้ได้หรือเปล่าครับ

Procedure Behaves On Main Form, But Not On The SubForm
I have a form with a subform and on the form and also on the subform, I have three comboboxes or txtboxes and in the OnExit event I have a little procedure which makes sure that each have been filled in or it asks if you want to cancell and if yes, it setfocus on the cmdCancell and then I can canells the records, and the procedure looks like this:
Me!QCTypes_Label.ForeColor = 0 'Change Label Color to Black
Dim Response As VbMsgBoxResult
If Len(Nz(Me.QCTypes, "")) = 0 Then 'If QC Type is Blank
Response = MsgBox("No QC Type Was Entered," & vbCrLf & "Do You Want to Cancel QCA.", vbYesNo + vbDefaultButton2, "No?")
If Response = vbYes Then
Me.cmdCancell.SetFocus 'SetFocus on cmdCancell
Exit Sub 'Exit Immediately
Else
Me!QCTypes_Label.ForeColor = 33023 'Change Label Color to Orange
Cancel = True 'Re-Enter QC Type, same field
End If
End If
Now the main form works great, but the subform acts strange, when I select YES, instead of cancelling and closing like the main form, this one does each procedure for each of the other two procedures. Why does it work right on the main and not on the subform? Thank you in advance for any assistnace rendered. :eek:
8 @R03651
      Private Sub Discount_Exit(Cancel As Integer)

      On Error Goto Error_Routine

      Dim RS As Recordset
      Set RS = Me.RecordsetClone
      RS.MoveLast
      If StrComp(Me.Bookmark, rs.Bookmark, 0) = 0 Then
        Forms![Orders]![Freight].SetFocus
        ' The following line may be removed in version 2.0
        Forms![Orders]![Orders Subform].Requery
      End If
      Exit Sub

      Error_Routine:
        MsgBox "You must be on a record with data"
      Exit Sub
      End Sub
9 @R03652
โอย ใช้ตาม คห.9 นี่โฟกัสไป แล้วไปแล้วก็แอบดีใจ แต่พอคลิ๊กที่อื่นไม่ไปไหนเลย พรุ่งนี้จะลองใหม่ครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3271s