kh0jy3n
Thành viên thường trực




- Tham gia
- 21/4/12
- Bài viết
- 345
- Được thích
- 115
PivotTable đi bạn, code chi cho nó cực thânGửi anh chị
mấy pro viết hộ em code cho file sau với ạ.
do một mã hàng tương đương với 1 sheet nên khi em làm với 30 - 40 mã hàng thì tương đương với 30-40 sheet nên file chạy rất rùa.
anh chị nào hộ em với ạ
em cảm ơn!
Chỉ làm theo nhu cầu theo vùng dữ liệu của bạnGửi anh chị
mấy pro viết hộ em code cho file sau với ạ.
do một mã hàng tương đương với 1 sheet nên khi em làm với 30 - 40 mã hàng thì tương đương với 30-40 sheet nên file chạy rất rùa.
anh chị nào hộ em với ạ
em cảm ơn!
Code của bạn:Chỉ làm theo nhu cầu theo vùng dữ liệu của bạn
Private Sub Test1()
Application.ScreenUpdating = False
With [C7:AG14]
.FormulaR1C1 = "=SUMIFS(DATA!R3C4:R9C4,DATA!R3C2:R9C2,CODE!R3C4,DATA!R3C1:R9C1,CODE!R5C,DATA!R3C3:R9C3,CODE!RC2)"
.Value = .Value
End With
Application.ScreenUpdating = False
End Sub
Biết là vậy rồi thầy nhưng bạn ấy muốn thì viết theo bạn muốn gán giá trị cho nhẹ file, còn về sau thì còn nhiều anh trên diễn đàn có giải pháp khácCode của bạn:
Vậy thôi cứ gõ công thức xuống bảng tính luôn cho rồi cho code làm gì?Mã:Private Sub Test1() Application.ScreenUpdating = False With [C7:AG14] .FormulaR1C1 = "=SUMIFS(DATA!R3C4:R9C4,DATA!R3C2:R9C2,CODE!R3C4,DATA!R3C1:R9C1,CODE!R5C,DATA!R3C3:R9C3,CODE!RC2)" .Value = .Value End With Application.ScreenUpdating = False End Sub
SUMIFS thường cho tốc độ không tồi nhưng đôi khi người ta vẫn muốn dùng code là vì: Dữ liệu người ta quá nhiều, nếu kéo fill SUMIFS đến vài chục ngàn dòng + vài trăm cột sẽ khiến bảng tính bị treo. Vậy trong trường hợp này, nếu lồng công thức vào code thì.. vẫn treo như thường, chẳng giải quyết được bất cứ điều gì cả
Bài toán này giải quyết bằng cách:
- Hoặc là PivotTable
- Hoặc là dùng dictionary để tổng hợp (như tôi đã làm cho bạn lần trước
- Hoặc cứ công thức như xưa nhưng sau khi kéo fill toàn bộ ta paste values hết chỉ chừa công thức lại vài dòng (để mai này có cập nhật thì lại kéo fill)
Gửi thầyPivotTable đi bạn, code chi cho nó cực thân
Em cảm ơn anh nhe.Chỉ làm theo nhu cầu theo vùng dữ liệu của bạn