-
Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 24-12-15, 11:26 AM
Hi các bạn. Mình đang gặp vấn đề khi muốn thực hiện thao tác click double vào 1 dòng record trong subform để mở main form chứa đúng dữ liệu của nó. Tuy nhiên khi làm, mỗi lần click double thì nó lại hiện lên 1 yêu cầu là nhập mã [Staffcode]. Mình chưa biết xử lý nó như nào, tìm hiểu trên diễn đàn nhưng vẫn chưa có answer. Mong các bạn chỉ dẫn nhé
Code VBA:
Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "Data Entry", , , "[Staffcode] = " & Me!Staffcode
End Sub
Kết quả như sau:
http://www.mediafire.com/view/o297j78kuu...h56_53.jpg -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
ongke0711 > 24-12-15, 12:35 PM
Ở phần OpenArgs bạn chỉ cần để "Me!StaffCode" là được rồi.
DoCmd.OpenForm "Data Entry", , , Me!Staffcode -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 24-12-15, 01:12 PM
Hi ban Ongke0711
Mình thử như bạn nói nhưng vẫn không được. Nó vấn yêu cầu nhập giá trị trước khi mở form Data Entry -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
ongke0711 > 24-12-15, 01:17 PM
Sự kiện Form load của cái form "Data Entry" như thế nào?
Vd:
Private Sub Form_Load()
If IsNull(Me.OpenArgs) = False Then
strSQL = "SELECT * FROM TableVidu WHERE [StaffCode] = '" & Me.OpenArgs & "'"
....
End if
End Sub -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 24-12-15, 01:44 PM
Mình không có sự kiện nào trên Onload của form Data Entry cả. Khi dbclick thì nó hiện lên bảng thông bbáo Enter parameter value yêu cầu mình nhập thông số vào. Khi nhập đúng với số nó hiện thị thì nó sẽ mở được form Entry data với đầy đủ thông tin yêu cầu. Vấn đề là làm thế nào để bỏ qua bước trung gian là phải nhập số Staffcode thôi. Để mình tối nay sẽ load file lên cho các bạn coi nhe -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 24-12-15, 11:38 PM
hi các bạn. Đây là file mình đang làm. Các bạn tham khảo rồi cho mình y kien nhe
http://www.mediafire.com/download/syffyb...1%29.accdb -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
ongke0711 > 25-12-15, 01:43 AM
Tôi tưởng bạn dùng Unbound form nên mới chỉ cách giùm OpenArgs để đưa điều kiện cho form sau nhưng bạn dùng Bound form thì cũng đơn giản hơn. Bạn chỉ cần đưa thẳng điều kiện vô lệnh Openform là được rồi.
- Dòng code của bạn sai ở chỗ: giữa các dấu "," không có khoảng trắng nếu bạn không đặt tham số. [StaffCode] của bạn dạng Text nên khi dùng làm điều kiện phải đặt trong dấu nháy đơn " ' ".
- Để click 1 dòng trong subform và mở 1 form khác có thông tin của dòng đó, bạn phải gán sự kiện DblClick thẳng ngay trên textbox bạn click chứ không phải DblClick cho cả cái subform như bạn đang làm.
- Ở đây bạn gán DblClick cho textbox [StaffCode] của sub form "Subfilter".
-----------------------------------------------------------------
Private Sub Staffcode_DblClick(Cancel As Integer)
DoCmd.OpenForm "Data Entry", acNormal, , "[Staffcode] = '" & Me.Staffcode & "'", , acDialog
End Sub
----------------------------------------------------------------- -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 25-12-15, 11:37 AM
Thank bạn Ongke0711 nhé. Vậy là việc dbclick vào dòng trong subform là không dc fk bạn. Dùng unbound form thì mình không quen, chỉ dùng dạng subform theo datasheet thôi. Dù sao cũng cảm ơn bạn nhiều nhé. -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
ongke0711 > 25-12-15, 12:26 PM
Bạn không đọc kỹ bài tôi viết à.
Làm theo hướng dẫn là DblClick vô cái textbox [StaffCode] trong subform. Subform hiển thị Datasheet, Single hay Continuous đều phải có các textbox hiển thị record chứ.
Để có thể click bất kỳ vị trí nào trong cái record cần chỉnh sửa thì bạn gán cùng một code đó cho event DblClick của tất cả các textbox trong subform. -
RE: Dbclick từ 1 kết quả trên subform để mở main form với dữ liệu của dòng đó
tvn_hut > 25-12-15, 01:13 PM
(25-12-15, 12:26 PM)ongke0711 Đã viết:
Bạn không đọc kỹ bài tôi viết à.
Làm theo hướng dẫn là DblClick vô cái textbox [StaffCode] trong subform. Subform hiển thị Datasheet, Single hay Continuous đều phải có các textbox hiển thị record chứ.
Để có thể click bất kỳ vị trí nào trong cái record cần chỉnh sửa thì bạn gán cùng một code đó cho event DblClick của tất cả các textbox trong subform.
Làm theo cách của bạn thì OK rồi, không lăn tăn gì cả. Mình cũng theo gợi ý của bạn làm được luôn việc dbclick vào dong record rồi. Thanks bạn nhiều nhé