Cho em xin code Tổng hợp vật tư

Liên hệ QC

duynguyenkk

Thành viên chính thức
Tham gia
19/9/12
Bài viết
75
Được thích
13
Dựa vào bảng Data để tổng hợp số lượng vật tư theo mã vật tư và ghi chú 1
+ Nếu ghi chú 1 rỗng thì bỏ qua
+ Nếu ghi chú 1 có giá trị thì xét tiếp ghi chú 2
Mỗi ghi chú 1 và ghi chú 2 thường có 2 giá trị (ví dụ ghi chú 1 = A hoặc =B; ghi chú 2 = 1 hoặc =2)
1575341465310.png
1575341919607.png
 

File đính kèm

  • nhocode.xls
    33 KB · Đọc: 10
Lần chỉnh sửa cuối:
Upvote 0
Upvote 0
dạ em muốn code do để lồng vào Chương trình em đang dùng, vì cái bảng data ko phải như vậy mà được xuất từ chương trình, nên giờ em muốn code để lồng thêm vào rồi mới ra bảng tổng hợp ạ.
Vậy bạn phải đưa file gốc lên xuất ra từ phần mềm.
 
Upvote 0
Dựa vào bảng Data để tổng hợp số lượng vật tư theo mã vật tư và ghi chú 1
+ Nếu ghi chú 1 rỗng thì bỏ qua
+ Nếu ghi chú 1 có giá trị thì xét tiếp ghi chú 2
Mỗi ghi chú 1 và ghi chú 2 thường có 2 giá trị (ví dụ ghi chú 1 = A hoặc =B; ghi chú 2 = 1 hoặc =2)
View attachment 229401
View attachment 229403
Cái này không đến nỗi phức tạp quá đâu, bạn tiềm Dic trong diễn đàn có nhiều Code lắm Ah, chắc có cái đúng yêu cầu của bạn lọc theo 2 điều kiện
 
Upvote 0
Vậy bạn phải đưa file gốc lên xuất ra từ phần mềm.
File gốc có dạng như thế này đây anh:
dữ liệu lấy từ Sheet"PhanTichVatTu" và kết quả được ghi vào sheet"TH-PKKK"
Yêu cầu : Dựa vào Sheet"PhanTichVatTu" lọc ra Mã vật tư có ghi chú PKKK ở cột AB ; số lượng ở cột AH dựa theo điều kiện vị trí lề (vị trí lề ở cột W) và điều kiện hướng mở (hướng mở cột V)
Nếu (vị trí lề ở cột W) ko có dữ liệu thì ko xét điều kiện hướng mở (hướng mở cột V)
 

File đính kèm

  • vidu.xls
    488.5 KB · Đọc: 17
Lần chỉnh sửa cuối:
Upvote 0
File gốc có dạng như thế này đây anh:
dữ liệu lấy từ Sheet"PhanTichVatTu" và kết quả được ghi vào sheet"TH-PKKK"
Yêu cầu : Dựa vào Sheet"PhanTichVatTu" lọc ra Mã vật tư có ghi chú PKKK ở cột AB ; số lượng ở cột AH dựa theo điều kiện vị trí lề (vị trí lề ở cột W) và điều kiện hướng mở (hướng mở cột V)
Nếu (vị trí lề ở cột W) ko có dữ liệu thì ko xét điều kiện hướng mở (hướng mở cột V)
Diễn giải thì nhiều nhưng tôi đọc không hiểu:
1/ Muốn lọc cái gì đó thì cột đó phải đầy đủ dữ liệu, vì dụ cột B, C, D và AB tôi đã gán đầy đủ.
2/ Tiêu đề phải duy nhất không được Merge and Center.
3/ Tiêu đề cột E, F của sheet TH-PKKK bạn ghi trớt qướt, đâu có cái vụ Ghi chú1, Ghi chú2 mà nó là Hướng mở, Vị trí bản lề.
4/ cột V và W ghi không đầy đủ (thiếu hướng mở).
5/ Sheet PhanTichVatTu không có cột Đơn vị thì lấy cái gì để ghi vào sheet TH-PKKK.

Nói chung muốn làm cái gì đó thì Sheet PhanTichVatTu và sheet TH-PKKK phải có nội dung đồng bộ, giống nhau.
 
Upvote 0
Diễn giải thì nhiều nhưng tôi đọc không hiểu:
1/ Muốn lọc cái gì đó thì cột đó phải đầy đủ dữ liệu, vì dụ cột B, C, D và AB tôi đã gán đầy đủ.
2/ Tiêu đề phải duy nhất không được Merge and Center.
3/ Tiêu đề cột E, F của sheet TH-PKKK bạn ghi trớt qướt, đâu có cái vụ Ghi chú1, Ghi chú2 mà nó là Hướng mở, Vị trí bản lề.
4/ cột V và W ghi không đầy đủ (thiếu hướng mở).
5/ Sheet PhanTichVatTu không có cột Đơn vị thì lấy cái gì để ghi vào sheet TH-PKKK.

Nói chung muốn làm cái gì đó thì Sheet PhanTichVatTu và sheet TH-PKKK phải có nội dung đồng bộ, giống nhau.
1/ Muốn lọc cái gì đó thì cột đó phải đầy đủ dữ liệu --->Muốn lọc ra Mã vật tư (Mã vật tư ở Sheet"PhanTichVatTu" cột AC)
3/ Tiêu đề cột E, F của sheet TH-PKKK bạn ghi trớt qướt, đâu có cái vụ Ghi chú1, Ghi chú2 mà nó là Hướng mở, Vị trí bản lề.
--->Ghi chú1= Hướng mở ;Ghi chú2 Vị trí bản lề.
4/ cột V và W ghi không đầy đủ (thiếu hướng mở) -> ko nhất thiết phải có
5/ Sheet PhanTichVatTu không có cột Đơn vị thì lấy cái gì để ghi vào sheet TH-PKKK. ----> cột đơn vị ở cột AI
code em mong muốn kết quả như thế này
1575360765232.png
code hiện tại lại tổng hợp như thế này :
1575360825772.png
 
Lần chỉnh sửa cuối:
Upvote 0
1/ Muốn lọc cái gì đó thì cột đó phải đầy đủ dữ liệu --->Muốn lọc ra Mã vật tư (Mã vật tư ở Sheet"PhanTichVatTu" cột AC)
3/ Tiêu đề cột E, F của sheet TH-PKKK bạn ghi trớt qướt, đâu có cái vụ Ghi chú1, Ghi chú2 mà nó là Hướng mở, Vị trí bản lề.
--->Ghi chú1= Hướng mở ;Ghi chú2 Vị trí bản lề.
4/ cột V và W ghi không đầy đủ (thiếu hướng mở) -> ko nhất thiết phải có
5/ Sheet PhanTichVatTu không có cột Đơn vị thì lấy cái gì để ghi vào sheet TH-PKKK. ----> cột đơn vị ở cột AI
code em mong muốn kết như thế này
View attachment 229418
code hiện tại lại tổng hợp như thế này :
View attachment 229420
1/ Tôi nhìn thì biết rồi, trong sheet PhanTichVatTu tôi đã gán bổ sung dữ liệu và tiêu đề bỏ Merge and Center.
2/ Sheet PhanTichVatTu cột Ma SP có mã là CS2CML-XF93 nhưng cột Hướng mở và Vị trí bản lề không ghi thì lấy cái gì để tính?

Xem File.
 

File đính kèm

  • Tong Hop.xls
    513.5 KB · Đọc: 13
Upvote 0
1/ Muốn lọc cái gì đó thì cột đó phải đầy đủ dữ liệu --->Muốn lọc ra Mã vật tư (Mã vật tư ở Sheet"PhanTichVatTu" cột AC)
3/ Tiêu đề cột E, F của sheet TH-PKKK bạn ghi trớt qướt, đâu có cái vụ Ghi chú1, Ghi chú2 mà nó là Hướng mở, Vị trí bản lề.
--->Ghi chú1= Hướng mở ;Ghi chú2 Vị trí bản lề.
4/ cột V và W ghi không đầy đủ (thiếu hướng mở) -> ko nhất thiết phải có
5/ Sheet PhanTichVatTu không có cột Đơn vị thì lấy cái gì để ghi vào sheet TH-PKKK. ----> cột đơn vị ở cột AI
code em mong muốn kết quả như thế này
View attachment 229418
code hiện tại lại tổng hợp như thế này :
View attachment 229420
Code của bạn thay đổi đoạn này
Mã:
            If dicKQ.Exists(vMaVatTu & vHuongMo & vViTrile) Then     'thuy
                avKQ(dicKQ.Item(vMaVatTu & vHuongMo & vViTrile), 3) = avKQ(dicKQ.Item(vMaVatTu & vHuongMo & vViTrile), 3) + avData(lngRow, 34) 'thuy
            Else
            
                lngNumKQ = lngNumKQ + 1
                dicKQ.Add vMaVatTu & vHuongMo & vViTrile, lngNumKQ 'thuy
                LngRowDic = lngNumKQ

                avKQ(LngRowDic, 1) = LngRowDic
                avKQ(LngRowDic, 2) = vMaVatTu
                avKQ(LngRowDic, 3) = avData(lngRow, 34)
                avKQ(LngRowDic, 4) = avData(lngRow, 35)
                avKQ(LngRowDic, 6) = vHuongMo
                avKQ(LngRowDic, 5) = vViTrile
                
            End If
kiểm tra lại xem đúng không nhé
 
Upvote 0
Code của bạn thay đổi đoạn này
Mã:
            If dicKQ.Exists(vMaVatTu & vHuongMo & vViTrile) Then     'thuy
                avKQ(dicKQ.Item(vMaVatTu & vHuongMo & vViTrile), 3) = avKQ(dicKQ.Item(vMaVatTu & vHuongMo & vViTrile), 3) + avData(lngRow, 34) 'thuy
            Else
          
                lngNumKQ = lngNumKQ + 1
                dicKQ.Add vMaVatTu & vHuongMo & vViTrile, lngNumKQ 'thuy
                LngRowDic = lngNumKQ

                avKQ(LngRowDic, 1) = LngRowDic
                avKQ(LngRowDic, 2) = vMaVatTu
                avKQ(LngRowDic, 3) = avData(lngRow, 34)
                avKQ(LngRowDic, 4) = avData(lngRow, 35)
                avKQ(LngRowDic, 6) = vHuongMo
                avKQ(LngRowDic, 5) = vViTrile
              
            End If
kiểm tra lại xem đúng không nhé
cám ơn bạn code chạy đúng rồi ah,
avKQ(dicKQ.Item(vMaVatTu & vHuongMo & vViTrile), 3) bạn giải thích giúp mình số 3 ý nghĩa gì với, mình tự mò nên ko hiểu lắm
 
Upvote 0
Là cột thứ 3 của AvKQ la số lượng
 
Upvote 0
Web KT
Back
Top Bottom