alice.chen610
Thành viên mới

- Tham gia
- 11/5/16
- Bài viết
- 8
- Được thích
- 0
Bạn xài VBA nhé, bài này dùng công thức sẽ nặng nề vì có nhiều sheet.Chào các bác, tình hình là đang bí vấn đề này:
em muốn đưa dữ liệu ở 1 bảng tổng dựa trên mã khách hàng vào trong các sheet có tên mã khách hàng tương đương, có file mẫu đính kèm, nhờ các bác ra tay giúp. Cám ơn nhìu nhìu!![]()
Cột mã khách hàng bạn là cột nào vậy?
hì, file đó bà chị đưa em nhờ giải thôi, em cũng ko để ý tên lắmBạn xài VBA nhé, bài này dùng công thức sẽ nặng nề vì có nhiều sheet.
[GPECODE=vb]Sub TrichDuLieu()
Dim i As Long, Rng As Range
Sheets("DOANH THU").Move Before:=Sheets(1) 'Di chuyen sheet len dau
Sheets("muc luc").Move Before:=Sheets(1) 'Di chuyen sheet len dau
Set Rng = Sheets(2).[A4].CurrentRegion 'Dat vung du lieu goc
For i = 3 To Sheets.Count
Sheets(i).[A3:J10000].Clear 'Xoa du lieu hien co
Sheets(i).[A1] = Sheets(2).[A4]: Sheets(i).[A2] = Sheets(i).Name 'Tao vung tieu chuan
Rng.AdvancedFilter xlFilterCopy, Sheets(i).[A1:A2], Sheets(i).[A3:J3] 'Loc du lieu
Sheets(i).[A1:A2].Clear 'Xoa vung tieu chuan
Next
Sheets("DOANH THU").Activate
End Sub[/GPECODE]
Mà vấn đề này phải gọi là trích xuất (hay lọc) dữ liệu mới đúng chứ đâu phải là thống kê nhỉ.
Tại ô A3 của các sheet bạn gõ công thức như sau:hì, file đó bà chị đưa em nhờ giải thôi, em cũng ko để ý tên lắm
mà em tìm hiểu VBA thì có vẻ nó ko đc khuyên dùng cho người ko am hiểu về nó cho lắm. Bác có thể giúp em công thức hóa nó đc ko? cái này cũng kết theo tháng, chắc ko ảnh hưởng gì lắm đâu![]()
=IFERROR(OFFSET('DOANH THU'!$A$1,SMALL(INDEX(('DOANH THU'!$A$5:$A$36=RIGHT(CELL("filename",A1), LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))))*ROW('DOANH THU'!$A$5:$A$36),0),ROW(A1)+COUNTIF('DOANH THU'!$A$5:$A$36,"<>" & RIGHT(CELL("filename",A1), LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1)))))-1,COLUMN(A1)-1),"")
cám ơn bạn nhiều nghen~Tại ô A3 của các sheet bạn gõ công thức như sau:
Fill CT sang phải và xuống dưới. Thực hiện như vậy cho tất cả các sheetMã:=IFERROR(OFFSET('DOANH THU'!$A$1,SMALL(INDEX(('DOANH THU'!$A$5:$A$36=RIGHT(CELL("filename",A1), LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))))*ROW('DOANH THU'!$A$5:$A$36),0),ROW(A1)+COUNTIF('DOANH THU'!$A$5:$A$36,"<>" & RIGHT(CELL("filename",A1), LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1)))))-1,COLUMN(A1)-1),"")