thdanh > 06-07-16, 12:19 AM
maidinhdan > 06-07-16, 10:44 AM
(06-07-16, 12:19 AM)thdanh Đã viết: Làm theo cách của bạn là tạo 3 querry mình chỉ so sánh được MaHH, TenHH giữa table A và B chứ mình chưa có so sánh được MaHH, TenHH table A so sánh với MaHHK, TenHHK của Table B. Với lại nó không ra 1 table C( là table chỉ định sẳn). Cho mình hỏi là có cách nào viết code VBA để dò tìm được ko bạn. Bạn có thể thiết kế dùm mình 1 bản Demo với mình rất cảm ơn!
Trích dẫn:Ví dụ: Mình có
Table A có các trường : MaHH, tenHH, LoaiHH...
Table B có các trường : MaHH, tenHH, LoaiHH, MaHHK, TenHHK...
Mình sẽ so sánh dữ liệu từ trường MaHH hoặc TenHH của Table A với cột MaHH, TenHH và MaHHK, TenHHK của TableB.
Nếu MaHH, TenHH của Table A trùng với 1 trong 2 trường MaHH, TenHH hoặc MaHHK, TenHHK thì sẽ lấy ra 1 table khác là Table C.
Trích dẫn:...chỉ so sánh được MaHH, TenHH giữa table A và B chứ mình chưa có so sánh được MaHH, TenHH table A so sánh với MaHHK, TenHHK của Table B....
thdanh > 06-07-16, 01:34 PM
(06-07-16, 10:44 AM)maidinhdan Đã viết:Minh ví dụ thế nhé :(06-07-16, 12:19 AM)thdanh Đã viết: Làm theo cách của bạn là tạo 3 querry mình chỉ so sánh được MaHH, TenHH giữa table A và B chứ mình chưa có so sánh được MaHH, TenHH table A so sánh với MaHHK, TenHHK của Table B. Với lại nó không ra 1 table C( là table chỉ định sẳn). Cho mình hỏi là có cách nào viết code VBA để dò tìm được ko bạn. Bạn có thể thiết kế dùm mình 1 bản Demo với mình rất cảm ơn!
Bạn có chạy thử code tôi hướng dẫn trên chưa, tin chắc là chưa rồi. Vì theo yêu câu của bạn:
Trích dẫn:Ví dụ: Mình có
Table A có các trường : MaHH, tenHH, LoaiHH...
Table B có các trường : MaHH, tenHH, LoaiHH, MaHHK, TenHHK...
Mình sẽ so sánh dữ liệu từ trường MaHH hoặc TenHH của Table A với cột MaHH, TenHH và MaHHK, TenHHK của TableB.
Nếu MaHH, TenHH của Table A trùng với 1 trong 2 trường MaHH, TenHH hoặc MaHHK, TenHHK thì sẽ lấy ra 1 table khác là Table C.
Như vậy, những gì hướng dẫn đã đúng với câu hỏi này.
Hay là bạn muốn lấy MaHH của Table So với TênHH: điều này thật phi lý
Còn nử, Tôi không hiểu có sự khác biệt nào khi bạn nói:
Trích dẫn:...chỉ so sánh được MaHH, TenHH giữa table A và B chứ mình chưa có so sánh được MaHH, TenHH table A so sánh với MaHHK, TenHHK của Table B....
Bạn hãy ví dụ bằng số liệu thử cho minh xem.
maidinhdan > 06-07-16, 04:23 PM
(06-07-16, 01:34 PM)thdanh Đã viết: Minh ví dụ thế nhé :Bạn cứ ví dụ như thế thì có khác gì câu hỏi và những gì mình trả lời phía trên đâu.
mình có 1 table A co cac field madn, tendn, diachi, socv, ngaycv.
Table B : madn, tendn, diachi, madnb, tendnb, diachi
Bây giờ mình sẽ dò tìm madn hoặc tendn của table A với madn, tendn, madnb, tendnb của Table B. nếu trùng thì sẽ bóc ra Table C gồm madn, tendn, diachi, socv, ngaycv.
thdanh > 06-07-16, 04:47 PM
maidinhdan > 07-07-16, 01:32 AM
(06-07-16, 04:47 PM)thdanh Đã viết: Mình có làm 1 file demo để bạn xem nhé : Mình muốn các mã của Table 2 (Madn, TenDn, MadnB, TenDNB) dò tìm dữ liệu trên Table 1 (madn, tendn) như sau: dữ liệu madn(Table2) - madn(Table1) nếu không trùng tiếp tục dò tìm qua MadnB(Table2) - madn(Table1). Nếu trùng thì sẽ copy dữ liệu đó vào Table 3 theo cấu trúc mình định sẳn. Ý của mình là như vậy đó bạn xem có cách làm nào tốt nhất giúp dùm mình với! Cảm ơn
http://www.mediafire.com/download/0wxjbx...p/Help.mdb
maidinhdan > 07-07-16, 04:09 PM
(07-07-16, 01:32 AM)maidinhdan Đã viết:(06-07-16, 04:47 PM)thdanh Đã viết: Mình có làm 1 file demo để bạn xem nhé : Mình muốn các mã của Table 2 (Madn, TenDn, MadnB, TenDNB) dò tìm dữ liệu trên Table 1 (madn, tendn) như sau: dữ liệu madn(Table2) - madn(Table1) nếu không trùng tiếp tục dò tìm qua MadnB(Table2) - madn(Table1). Nếu trùng thì sẽ copy dữ liệu đó vào Table 3 theo cấu trúc mình định sẳn. Ý của mình là như vậy đó bạn xem có cách làm nào tốt nhất giúp dùm mình với! Cảm ơn
http://www.mediafire.com/download/0wxjbx...p/Help.mdb
Thật tình cái cách bạn đặt câu hỏi này tôi vẫn không thể hiểu được, đến khi mở file lên tôi mới hiểu.
Cũng khá đơn giản, tuy nhiên tôi chưa trả lời cách làm cho bạn.
Bạn lên Google hoặc Youtube tìm hiểu về bài này: Join và Inner Join ( Link phía trên tôi cũng có nói) . 4 Ngày sau, tôi cùng bàn thảo luận tiếp và chắc chắn rằng bạn sẽ có đáp án về câu hỏi này.
Thân ái!, Đính kèm Demo cho những ai muốn tham khảo
SELECT t2.*, t1.socv, t1.ngaycv
FROM t2 Inner Join t1 on (((t2.Madn)=t1.Madn Or (t2.MadnB)=t1.Madn));
SELECT t2.*, t1.socv, t1.ngaycv
FROM t2, t1
WHERE (((t2.Madn)=[t1].[Madn] Or (t2.MadnB)=[t1].[Madn]));
thdanh > 19-07-16, 10:43 AM
maidinhdan > 19-07-16, 11:33 AM
(19-07-16, 10:43 AM)thdanh Đã viết: Tại sao mình đã làm như thế mà nó không tìm những dữ liệu nào trùng mới lấy ra. Mà nó lấy hết tất cả luôn. Bạn có thể hướng dẫn mình là khi không có dữ liệu trùng thì nó cảnh báo.
SELECT t2.*, t1.socv, t1.ngaycv
FROM t2 Inner Join t1 on (((t2.Madn)=t1.Madn Or (t2.MadnB)=t1.Madn));
SELECT t2.*, t1.socv, t1.ngaycv
FROM t2 Inner Join t1 on (((t2.Madn)=t1.Madn Or (t2.MadnB)=t1.Madn));
ongke0711 > 19-07-16, 01:27 PM