MANHTS
Thành viên chính thức


- Tham gia
- 16/11/20
- Bài viết
- 63
- Được thích
- 4
Đoạn này không hiểu cho lắmmuốn tìm và xuất ra theo danh sách em đã tại list sẵn
Vâng em sẽ lưu ý:Đoạn này không hiểu cho lắm (tức là em có 1 sheet dữ liệu nhập bác ạ chủ yếu là hóa chất sau khoảng vài trăm loại ở mỗi phương pháp vd e để là aflatoxin thì hóa chất đó nó sử dụng bao nhiêu, sau đó ở biểu mẫu ví dụ em muốn tìm dữ liệu của phương pháp aflatoxin thì ở cột aflatoxin có dữ liệu nào thì ở biểu mẫu sẽ tìm ra lạo hóa chất đó hình như phải sd vòng lặp 2 lần mà em k biết sử dụng
Bài đã được tự động gộp:
Tiêu đề không viết hoa cả câu nha bạn.với lại sau này có đăng bài về nhờ viết code thì đăng vào box lập trình với excel nha
sheets này dữ liệu là duy nhất chứ bạn,có nghĩa là cột B hóa chất sẽ không bị trùng đúng không?dữ liệu từ SHEET DULIEUNHAP
Đúng rồi bác dữ liệu hóa chất sẽ k bị trùng nhưng mà khó cái là ở cột aflatoxin từ dòng 5-200 chẳng hạn làm sao có thể tìm lọc dc dữ liệu có và loại bỏ dòng trốngsheets này dữ liệu là duy nhất chứ bạn,có nghĩa là cột B hóa chất sẽ không bị trùng đúng không?
Cột này trong miêu tả file đâu có nhắc tới đâu bạn?cột aflatoxin
Option Explicit
Sub Danh_Sach()
Dim DS(), KQ()
Dim i As Long, K As Long, Hc As String
With Sheets("DULIEUNHAP")
DS = .Range("B5", .Range("B" & Rows.Count).End(xlUp)).Resize(, 9).Value
ReDim KQ(1 To UBound(DS), 1 To 5)
For i = 1 To UBound(DS)
Hc = DS(i, 1)
If Hc <> "" Then
K = K + 1
KQ(K, 1) = K
KQ(K, 2) = DS(i, 1)
KQ(K, 3) = DS(i, 7)
KQ(K, 4) = DS(i, 8)
KQ(K, 5) = DS(i, 9)
End If
Next
End With
Sheets("BIEUMAU").Range("B6").Resize(K, 5) = KQ
Sheets("BIEUMAU").Range("B6").Resize(K, 5).Borders.LineStyle = 1
End Sub
bác có thể giúp em thêm dc k ạ (VD muốn lấy dữ liệu ở cột K (ở đây em để tên là aflatoxin) cột K có dữ liệu từ ô K5-K84) em muốn nếu em tìm dữ liệu cột K thì từ K5-K84 (Vd cột K có dữ liệu ở các dòng K8; k20; k21; 22; 23; 24;...) nếu có dữ liệu thì sẽ tham chiếu sang cột B tương ứng để điền vào Sheet BIEUMAU nếu không có dữ liệu thì bỏ qua bác ạCột này trong miêu tả file đâu có nhắc tới đâu bạn?
Bài đã được tự động gộp:
hay ý bạn là nếu cột đó trống thì bỏ qua còn nếu có chứa dữ liệu thì lấy quá sheets BIEUMAU ?
Bài đã được tự động gộp:
Nếu cột B tên hóa chất ở sheets DULIEUNHAP là không trùng thì bạn dùng code này để lấy dữ liệu ở sheets BIEUMAUMã:Option Explicit Sub Danh_Sach() Dim DS(), KQ() Dim i As Long, K As Long, Hc As String With Sheets("DULIEUNHAP") DS = .Range("B5", .Range("B" & Rows.Count).End(xlUp)).Resize(, 9).Value ReDim KQ(1 To UBound(DS), 1 To 5) For i = 1 To UBound(DS) Hc = DS(i, 1) If Hc <> "" Then K = K + 1 KQ(K, 1) = K KQ(K, 2) = DS(i, 1) KQ(K, 3) = DS(i, 7) KQ(K, 4) = DS(i, 8) KQ(K, 5) = DS(i, 9) End If Next End With Sheets("BIEUMAU").Range("B6").Resize(K, 5) = KQ Sheets("BIEUMAU").Range("B6").Resize(K, 5).Borders.LineStyle = 1 End Sub
Option Explicit
Sub Danh_Sach()
Dim DS(), KQ()
Dim i As Long, K As Long, Hc As String
With Sheets("DULIEUNHAP")
DS = .Range("B5", .Range("B" & Rows.Count).End(xlUp)).Resize(, 10).Value
ReDim KQ(1 To UBound(DS), 1 To 5)
For i = 1 To UBound(DS)
Hc = DS(i, 1)
If Hc <> "" And DS(i, 10) <> "" Then
K = K + 1
KQ(K, 1) = K
KQ(K, 2) = DS(i, 1)
KQ(K, 3) = DS(i, 7)
KQ(K, 4) = DS(i, 8)
KQ(K, 5) = DS(i, 9)
End If
Next
End With
Sheets("BIEUMAU").Range("B6").Resize(K, 5) = KQ
Sheets("BIEUMAU").Range("B6").Resize(K, 5).Borders.LineStyle = 1
End Sub
Em cảm ơn bác đã góp ý ạ em sẽ sửaGóp vài ý nhỏ đến chủ bài đăng:
a./ Tên trang tính của bạn quá dài, không cần thiết đến như vậy
Thay vì 'DANHMUCHOACHAT' SAO KHÔNG LÀ 'DanhMucHC''; Nếu là mình thì chỉ là 'DMuc'
b./ CSDL ở trang này thiếu cột/trường quan trọng; đó là 'Mã HC'
Nếu không có trường/cột này thì lúc nào đó CSDL của bạn sẽ trở thành đống rác không mong muốn.
Xin chào bạn & xin chúc mọi người tuần làm việc hiệu quả!
em cảm ơn bác nhiều ạ để em sử dụng codeBạn thử code này,thêm cái điều kiện là được màMã:Option Explicit Sub Danh_Sach() Dim DS(), KQ() Dim i As Long, K As Long, Hc As String With Sheets("DULIEUNHAP") DS = .Range("B5", .Range("B" & Rows.Count).End(xlUp)).Resize(, 10).Value ReDim KQ(1 To UBound(DS), 1 To 5) For i = 1 To UBound(DS) Hc = DS(i, 1) If Hc <> "" And DS(i, 10) <> "" Then K = K + 1 KQ(K, 1) = K KQ(K, 2) = DS(i, 1) KQ(K, 3) = DS(i, 7) KQ(K, 4) = DS(i, 8) KQ(K, 5) = DS(i, 9) End If Next End With Sheets("BIEUMAU").Range("B6").Resize(K, 5) = KQ Sheets("BIEUMAU").Range("B6").Resize(K, 5).Borders.LineStyle = 1 End Sub
Bài đã được tự động gộp:
Với lại bạn sửa lại tiêu đề bài viết đi.Nội dung là tổng hợp dữ liệu hay gì đó.với lại không viết hoa cả câu
Bác ơi cho em hỏi nếu em muốn tìm dữ liệu ở cột L, M, N, O, P thì phải thêm đoạn code nào ạ (hiện tại mới chỉ tìm ở cột K)Em cảm ơn bác đã góp ý ạ em sẽ sửa
Bài đã được tự động gộp:
em cảm ơn bác nhiều ạ để em sử dụng code
ý bạn là muốn tìm hết các cột? vậy sao từ đầu bạn không nếu hết điều kiện lọc vậy?Bác ơi cho em hỏi nếu em muốn tìm dữ liệu ở cột L, M, N, O, P thì phải thêm đoạn code nào ạ (hiện tại mới chỉ tìm ở cột K)
đây là phần điều kiện trong codeIf Hc <> "" And DS(i, 10) <> "" Then
Dạ em mới tập làm nên còn gà mờ lắm bác ạ ; bác có thể chỉnh đoạn code đó giúp em dc không em muốn tìm từ cột K-W em sẽ tạo 1 cái list ở cột biểu mẫu để tùy ý chọn 1 cột bất kỳ trong nhóm cột K-W ạ:ý bạn là muốn tìm hết các cột? vậy sao từ đầu bạn không nếu hết điều kiện lọc vậy?
đây là phần điều kiện trong code
Chưa hiểu rõ ý muốn của bạn lắm.Bạn gửi file mẫu kết quả mong muốn đimuốn tìm từ cột K-W em sẽ tạo 1 cái list ở cột biểu mẫu
dạ em gửi bác ạ ( ở bên sheet biểu mẫu em có làm 1 cái list dùng để chọn xuất các cột khi mình cần sẽ ra dữ liệu) bác xem giúp em ạChưa hiểu rõ ý muốn của bạn lắm.Bạn gửi file mẫu kết quả mong muốn đi
ý tôi là cái list chọn cột ở đâu,và xét các cột theo tiêu chí nào.bạn làm cái kết quả cuối cùng bằng tay để tôi hiểu còn cái file bạn gửi nó chỉ có cột I J thôi à có cái chỗ chọn cột nào đâu? ví dụ bạn nêu ra chọn chộn nào kết quả ra làm saodạ em gửi bác ạ ( ở bên sheet biểu mẫu em có làm 1 cái list dùng để chọn xuất các cột khi mình cần sẽ ra dữ liệu) bác xem giúp em ạ
em gửi lại bác file chắc em để cái cột list nó ở bên cột nên có khi bác mở bị ẩn ạý tôi là cái list chọn cột ở đâu,và xét các cột theo tiêu chí nào.bạn làm cái kết quả cuối cùng bằng tay để tôi hiểu còn cái file bạn gửi nó chỉ có cột I J thôi à có cái chỗ chọn cột nào đâu? ví dụ bạn nêu ra chọn chộn nào kết quả ra làm sao
Rồi nêu điều kiện lọc đi bạn ,khác rỗng là lấy hả?em gửi lại bác file chắc em để cái cột list nó ở bên cột nên có khi bác mở bị ẩn ạ
ĐÚNG RỒI BÁC KHÁC RỖNG LÀ LẤY BÁC ẠRồi nêu điều kiện lọc đi bạn ,khác rỗng là lấy hả?
cột I J có cần khác rỗng mới lấy không? mà bạn có vẻ thích viết hoa cả câuĐÚNG RỒI BÁC KHÁC RỖNG LÀ LẤY BÁC Ạ