tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Bạn thêm 1 lệnh filterOn nữa thì nó mới chạy.
Bởi vì khi bạn gán lại giá trị Filter thì nó cũng đã lọc rồi, nhưng nó chưa refresh lại màn hình , con trỏ bản ghi vẫn đang nằm ngay tại record cũ.
Chỉ khi có 1 lệnh nào đó làm di chuyển sang record khác thì lúc đó nó mới ngó lại điều kiện filter để làm.

subform_giaonhan.Filter = "so_tham_chieu = ' " & Combo0.Value & " ' "
subform_giaonhan.FilterOn = True

2 câu liên tiếp nhau.
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Nó vẫn báo method or data member not found ở chỗ subform_giaonhan.Filter đó anh. Em coi lại kỹ lắm rồi, em không có gõ sai gì hết á :khoc:
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Nó vẫn báo method or data member not found ở chỗ subform_giaonhan.Filter đó anh. Em coi lại kỹ lắm rồi, em không có gõ sai gì hết á :khoc:

Bạn đặt cái combo0 đó ở đâu?
Nếu đặt ở Form khách hàng thì lấy câu 1 của bạn:

Me.subform_giaonhan.Form.Filter = "so_tham_chieu = " & Me.Combo0 (cái này em search có người làm được rùi mà sao em làm không được vậy??)

Và nhớ thêm filterOn:

Me.subform_giaonhan.Form.FilterOn = True
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Cho em hỏi thêm là khi em muốn tạo them combobox để tìm kiếm giống như combo0 này, cũng tìm và hiện ra trên subform_giaonhan, giả sử như em tạo cboKH để tìm khách hàng và hiển thị trên subform_giaonhan cũng các thông tin như vậy nhưng filter theo khach_hang. Em làm tương tự như vậy nhưng không được, chỉ chọn theo combo0 thì được còn chọn qua cboKH thì subform không thay đổi gì access báo "can't find the macro "True", the macro doesn't exist, or the macro is new but isnot saved...". Em cũng tìm cách gotfocus qua combo kia khi chuyển tiêu chí chọn (theo khach_hang hoặc theo so_tham_chieu) nhưng không được. Mọi người chỉ em với. Vô cùng cảm ơn. Em bị rối rồi không hiểu vì sao nữa :khoc::khoc:
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Em làm được phần tìm kiếm với cả 2 combobox rùi nhưng khi chuyển giữa 2 combo (chuyển tiêu chí tìm kiếm) nó bị báo như em nói đó

Ms office Access can't find the macro "True"
the macro (or its macro group) doesn't exist, or the macro is new but hasnot been saved. Note that when you enter a macrogroupname.macroname syntax in an argument, you must specify the name the macro 's macro group was last saved under.


code của em như sau:

Private Sub Combo0_AfterUpdate()
Me!subform_giaonhan.Visible = True
Me.subform_giaonhan.Form.Filter = "so_tham_chieu = " & Me.Combo0
Me.subform_giaonhan.Form.FilterOn = True
End Sub

Private Sub Combo14_AfterUpdate()
Me!subform_giaonhan.Visible = True
Me.subform_giaonhan.Form.Filter = "khach_hang = " & Chr(34) & Me.Combo14 & Chr(34)
Me.subform_giaonhan.Form.FilterOn = True
End Sub


Em thử làm gotfocus cho event beforeupdate cho combo14

Private Sub Combo14_BeforeUpdate(Cancel As Integer)
Combo14.GotFocus
End Sub


nhưng bị báo lỗi method or data member not found ở gotfocus. Ai chỉ em với. thanks nhìu nhìu

Cho em hỏi thêm mẫu câu lệnh để lấy giá trị dạng date là gì? sao em viết nó báo sai dạng, sửa đủ kiểu mà không được
Me.subform_giaonhan.Form.Filter = "ngay_nhan = # "&me.Combo18& " # "
 
Sửa lần cuối:
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Em làm được phần tìm kiếm với cả 2 combobox rùi nhưng khi chuyển giữa 2 combo (chuyển tiêu chí tìm kiếm) nó bị báo như em nói đó

Ms office Access can't find the macro "True"
the macro (or its macro group) doesn't exist, or the macro is new but hasnot been saved. Note that when you enter a macrogroupname.macroname syntax in an argument, you must specify the name the macro 's macro group was last saved under.

Bạn rà lại hết các properties xem chỗ nào có chứa chữ "True" thì dừng lại ngẫm nghĩ xem có phải chỗ đó cần ghi là "True" hay chỗ đó nó đòi hỏi phải là tên của 1 object hoặc tên của 1 sub, function, macro ...

code của em như sau:

Private Sub Combo0_AfterUpdate()
Me!subform_giaonhan.Visible = True
Me.subform_giaonhan.Form.Filter = "so_tham_chieu = " & Me.Combo0
Me.subform_giaonhan.Form.FilterOn = True
End Sub

Private Sub Combo14_AfterUpdate()
Me!subform_giaonhan.Visible = True
Me.subform_giaonhan.Form.Filter = "khach_hang = " & Chr(34) & Me.Combo14 & Chr(34)
Me.subform_giaonhan.Form.FilterOn = True
End Sub

Đoạn code này không thấy có gì đáng nghi.

Em thử làm gotfocus cho event beforeupdate cho combo14

Private Sub Combo14_BeforeUpdate(Cancel As Integer)
Combo14.GotFocus
End Sub


nhưng bị báo lỗi method or data member not found ở gotfocus. Ai chỉ em với. thanks nhìu nhìu

Hãy thử gọi tên rõ ràng hơn, chẳng hạn Me.Combo14...
Hãy thử dùng SetFocus thay vì GotFocus.

Cho em hỏi thêm mẫu câu lệnh để lấy giá trị dạng date là gì? sao em viết nó báo sai dạng, sửa đủ kiểu mà không được
Me.subform_giaonhan.Form.Filter = "ngay_nhan = # "&me.Combo18& " # "

Kiểm tra kỹ xem Rowsouce là mấy cột, và Bound Column là cột nào.
Có thể source là "Select col1, col2 .. From ..." mà bound lại lấy cột khác, không phải cột ngày_nhận.

Cái dấu "#" để sát đừng cách ra 1 khoảng trống, còn dấu "&" thì cách ra rõ ràng:
Me.subform_giaonhan.Form.Filter = "ngay_nhan = #" & me.Combo18 & "#"
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Em làm lại với setFocus:

Private Sub Combo14_BeforeUpdate(Cancel As Integer)
Me.Combo14.SetFocus
End Sub


Nhưng lại bị báo lỗi khác nữa "You must save the field before you execute the GoToControl action, then GoToControl method or the SetFocus method"

Còn ngay_nhan em kiểm tra lại kỹ rồi.
Rowsource: Select Table1.ngay_nhan FROM Table1 ORDER BY [ngay_nhan];
Bound collums: 1

Code không báo lỗi nhưng cũng k tìm theo ngay_nhan luôn, còn 3 cái kia thì ok
Me.subform_giaonhan.Form.Filter = "ngay_nhan = #" & me.Combo18 & "#"

Cho em hỏi thêm là bên chỗ combobox khi em để trên table các giá trị giống nhau, ví dụ như mỗi số tham chiếu sẽ có nhiều thiết bị đi cùng nên em sẽ làm mỗi hàng 1 thiết bị còn số tham chiếu giống nhau, thế là combo cũng hiện ra 1 mớ giá trị giống nhau khi kéo xuống. Giờ em làm sao để nó chỉ hiện ra 1 giá trị 1 2 3 4...thay vì 1 1 1 2 2 3 3 3 4 4 4 4......
 
Sửa lần cuối:
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Em làm lại với setFocus:

Private Sub Combo14_BeforeUpdate(Cancel As Integer)
Me.Combo14.SetFocus
End Sub


Nhưng lại bị báo lỗi khác nữa "You must save the field before you execute the GoToControl action, then GoToControl method or the SetFocus method"

Còn ngay_nhan em kiểm tra lại kỹ rồi.
Rowsource: Select Table1.ngay_nhan FROM Table1 ORDER BY [ngay_nhan];
Bound collums: 1

Code không báo lỗi nhưng cũng k tìm theo ngay_nhan luôn, còn 3 cái kia thì ok
Me.subform_giaonhan.Form.Filter = "ngay_nhan = #" & me.Combo18 & "#"

Cho em hỏi thêm là bên chỗ combobox khi em để trên table các giá trị giống nhau, ví dụ như mỗi số tham chiếu sẽ có nhiều thiết bị đi cùng nên em sẽ làm mỗi hàng 1 thiết bị còn số tham chiếu giống nhau, thế là combo cũng hiện ra 1 mớ giá trị giống nhau khi kéo xuống. Giờ em làm sao để nó chỉ hiện ra 1 giá trị 1 2 3 4...thay vì 1 1 1 2 2 3 3 3 4 4 4 4......

Lỗi này chỉ xảy ra khi bạn dùng một form có RecordSource = với RowSource của combo box + combo box này có Control Source.

Kiểm tra lại đi.

Khi viết, đừng bắt tay làm liền, mà phải chuẩn bị logic, chứ làm như bạn thì hễ viết ra một câu là sai một câu, sửa cái sai này lại xuất hiện cái sai khác thì ... bao giờ cho đến tháng Mười ????

Muốn nó unique dữ liệu thì câu select ở Row Source nên có dạng:

SELECT DISTINCT fieldlist FROM table
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

10 tháng 5 ngày nữa là tới tháng 10 đó anh :D. Em mới học từ đầu mà, nên mới dại vậy, khổ lắm cơ. Em cũng muốn dấu dốt lắm nhưng lại sợ ngu. Túm lại là tự do ngôn luận mà, em có quyền hỏi còn anh không muốn trả lời thì tuỳ anh. Mà anh không nhìn lại xem, cũng có người cảm thấy câu trả lời của anh là có ích mà. Em cũng đâu bắt anh trả lời, đúng k? nếu anh thấy ngứa mắt thì có thể k xem hoặc close topic này lại. Nói thẳng anh đừng giận chi cho mệt ngưòi anh hén.
Thiệt tình em cũng có đọc tài liệu access của Nguyễn Sơn Hải nhưng em k tài nào kiếm ra phần 2, mà phần 1 thì không có những kiến thức em cần. Vậy em mới hỏi ai có tài liệu share cho em với :-((. Em hỏi cũng ngóng mỏi cổ mới có ngưòi trả lời chứ bộ. mà em ngu thì em chịu thôi. Okie?
Vô cùng xin lỗi vì nói năng như vậy, dù sao anh cũng ngang tuổi mẹ em. Nhưng không nói thì ấm ức chết mất. Mình dấu dốt thì thiên hạ bảo mình dấu dốt, mình lòi cái ngu ra cũng không xong. Em chỉ mún học hỏi thôi mờ. Thực tình trước khi up lên hỏi em cũng có search qua trên HELP của VBA, google nó nữanhưng chắc k đúng cách nên k ra. Vậy em mới hỏi thôi. Nên mấy anh/chị thông cảm hén. Em cũng chỉ cố gắng thôi :D :khocdudoi:

Dù sao cũng cảm ơn anh phatnq nhiều, nhưng lỗi recordsource của form trùng với rowsource của combo em nghĩ không phải, vì em làm search theo 4 cái so_tham_chieu, khach_hang, ngay_nhan, thiet_bi, làn như nhau, chỉ khác kiểu dữ liệu thôi, mà 3 cái kia thì được hết chỉ có ngay_nhan không báo lỗi gì hết nhưng nó cũng không hiển thị dữ liệu ra như mình cần

http://www.4shared.com/file/160067575/2e86d06e/db6.html

em up file lên cho dễ nói hén. e cũng kiểm tra lại properties rồi vì em chọn combo từ field đó rồi lọc giá trị hiển thị nên đương nhiên subform sẽ có recordsource = rowsource của combo nhưng như em đã nói thì 3 cái kia em cũng làm y chang vậy mà k sao hết, vẫn chạy bình thường
 
Sửa lần cuối:
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Dù sao cũng cảm ơn anh phatnq nhiều, nhưng lỗi recordsource của form trùng với rowsource của combo em nghĩ không phải, vì em làm search theo 4 cái so_tham_chieu, khach_hang, ngay_nhan, thiet_bi, làn như nhau, chỉ khác kiểu dữ liệu thôi, mà 3 cái kia thì được hết chỉ có ngay_nhan không báo lỗi gì hết nhưng nó cũng không hiển thị dữ liệu ra như mình cần

http://www.4shared.com/file/160067575/2e86d06e/db6.html

em up file lên cho dễ nói hén. e cũng kiểm tra lại properties rồi vì em chọn combo từ field đó rồi lọc giá trị hiển thị nên đương nhiên subform sẽ có recordsource = rowsource của combo nhưng như em đã nói thì 3 cái kia em cũng làm y chang vậy mà k sao hết, vẫn chạy bình thường

Bạn mở propreties của cái combo ấy lên sẽ thấy event AfterUpdate bạn đã không gán vào đâu cả.
Mặc dù trên VBE bạn có đoạn Sub combo18_AfterUpdate nhưng đoạn sub đó sẽ không được gọi vì trong design đã không báo để sử dụng nó.
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Hic, hôm qua bị khùng nên nói tùm lum. Ân hận quá. Thỉnh thoảng lại không kiểm soát được lời nói. Cám ơn bác muontennguoi nhieu nha. Em viết bài này để cám ơn ở đây thôi chứ k cám ơn được, máy em bị sao á, vô member k đọc được bài bác muontennguoi mới post lên, để ở visistor mới đọc được. Cám ơn mọi người và cả lời khuyên của bác Phát :D. Hôm qua nói năng hơi bị láo (hay quá láo :p). Mỗi người một cách học mà. hì. máy dạo này nó tưng tưng phát bực, hôm qua stress nữa nên ai đụng vô là cắn à. hehe. Chắc phải đọc thêm sách rùi. Ai có access 2003 Nguyến Sơn Hải phần 2 gửi cho em với nha, tài liệu nào cụ thể hơn về lập trình VBA càng tốt, mò mò kiểu này cũng cực :D
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

Về đề tài này, tôi đề xuất như thế này nhé:
Trên formOngnoi:
+ Tìm kiếm theo mã số: đặt cbokhachhang và một số textbox là các thông tin của khách hàng. ẩn các textbox này đi, khi nào cbokhachhang afterupdate thì hiện lên.
+ Tìm kiếm theo tên: đặt textbox tenkhachhang để làm tham chiếu, một textbox khác cho hiện các tên khách hàng tương tự (như Tuấn: Thanh Tuấn, Văn Tuấn), sau khi chọn textbox này, thì các thông tin về khách hàng đó lại hiện lên các textbox thông tin khách hàng.
Sau đó, có thể đặt thêm điều kiện ngày tháng
Subform thiết bị thiết lập các link với mainform. Vì điều kiện link theo mã khách hàng là tốt nhất, cho nên đặt ẩn một textbox makhachhang (để khi tìm kiếm theo tên hay theo mã số, thì textbox này đều có một giá trị) và làm tham chiếu cho link với thiết bị.
Còn cụ thể như thế nào, thực tế tôi cũng đang làm (cũng mới học mà). Mới chỉ có hướng như vậy.
Các PRO tiếp tục hướng dẫn nhé
 
Ðề: tìm tên khách hàng và hiển thị tất cả các dữ liệu liên quan lên form và subform

drap cái table vô thử xem sao.

Mà muốn dùng wizard thì ralationship phải đặt liên kết ông nội - cha - con trước.

Trước tiên bạn mở cái from cho tblKhachHang.
Trong form đó bạn drap cái table tblGiaoNhan vào.
- Lúc đó nó sẽ tạo ra 1 cái form nữa gọi là subform-giao nhan
Bạn save lại .
Mở cái subform mà máy vừa mới tạo thêm đó ra.
Drap tiếp cái tblThietBi vào.
Save lại.

Chạy ra mở cái form KhachHang ban đầu (form ông nội) ra xem.

Xem thử file đính kèm.

Xin cho hỏi 1 query mà có điều kiện là 1 textbox thuộc Form cháu thì diều kiện đó ghi như thế nào? Đại ý là:
vi dụ:
Nếu textbox1 thuộc From ông nội cú pháp: Forms!ongnoi.textbox1
Nếu textbox2 thuộc Form Cha cú pháp: Forms!ongnoi!Cha.form.textbox2
Nếu textbox3 thuộc from cháu thì cú pháp như thế nào?
 

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Kỹ thuật giải trình thanh tra BHXH

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top