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


- Tham gia
- 18/12/07
- Bài viết
- 83
- Được thích
- 13
- Nghề nghiệp
- BI
Gia Khuê chào các bác,
GK đang xử lý 1 số dữ liệu để tìm được tổng số giao dịch trong 1 ngày cho từng nước theo ngày JoinIn.
Trong file đính kèm, ở sheet Details, từ cột A đến F là data đã gom từ nhiều nguồn. Các cột sau là phần xử lý và các cột phụ mà GK sử dụng.
Từ data này, GK lấy 1 vài ví dụ để có thể hiểu rõ hơn:
* ClientCode 305246 (China) tham gia ngày 18 /11/2005, ngày đầu tiên giao dịch (chỉ tính trong data này) là ngày 1/1/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 4.
* ClientCode 305248 (Portugal) tham gia ngày 1/5/2010, ngày đầu tiên giao dịch là ngày 2/5/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 5.
* ClientCode 305249 (Vietnam) tham gia ngày 4/5/2010, ngày đầu tiên giao dịch là ngày 1/5/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 3.
Vậy trong sheet Summary sẽ thể hiện:
Ngày 1/5/2010, có 4 giao dịch của khách hàng China, và khách hàng này join in trước tháng 5/2010.
Ngày 2/5/2010, có 5 giao dịch của khách hàng Portugal, và khách hàng này join in vào ngày 1/5/2010.
Ngày 11/5/2010, có 3 giao dịch của khách hàng Vietnam, và khách hàng này join in vào ngày 4/5/2010.
Vấn đề GK đang gặp phải như sau:
* Format của ngày: vì data này được lấy từ system, nhưng dường như PC của mỗi người lấy format ngày khác nhau nên data mà GK nhận được có format ngày theo đủ kiểu. Ở sheet Details, GK đã dùng đủ kiểu để đổi thành dạng ngày đúng, nhưng vẫn có 1 số trường hợp bị sai. Đó là những trường hợp GK uýnh dấu vàng và xanh. Các bác xem giúp GK xem có cách nào giải quyết triệt để vấn đề này không với.
* Để tìm ra được ngày đầu tiên giao dịch, GK sủ dụng công thức mảng ở cột G trong sheet Details. Điều này làm cho file chạy rất là chậm. Từ đầu năm đến giờ, data của GK đã lên tới hơn 300.000 dòng, số cột thì khoảng như trong file các bác xem. Mỗi lần nó chạy, GK chỉ còn nước chạy qua máy tính khác làm việc rồi quay lại với nó sau. Mà khổ nỗi là mỗi ngày đều update số liệu mới, sau đó lại phải chạy lại từ đầu, chứ không phải chạy 1 lần duy nhất rồi paste value được. GK tính đến giải pháp là dùng pivot table có filter, tuy nhiên như vậy thì việc kết nối data này với file khác là không khả thi. Hiện tại từ kết quả này, GK còn phải làm thêm mí bước nữa để ra kết quả khác nữa.
GK nhờ các bác xem và tư vấn cách sắp xếp data hay dùng formula nào khác mà cho nó chạy nhanh, chứ chạy thế này, sốt ruột quá ạ.
GK cám ơn các bác nhiều.
P/S: GK dùng 2007 nên đã save thành 97-2003, tuy nhiên, khi save nó cứ báo lỗi là format hay data không phù hợp với 97-2003. Vì thế GK đa paste value và uýnh thêm dấu nháy phía trước các công thức. Khi các bác chạy, vui lòng bỏ dấu nháy rồi enter hoặc Ctrl Shift Enter (cho cột G only) giúp GK.
Cám ơn các bác lần nữa.
Gia Khuê
GK đang xử lý 1 số dữ liệu để tìm được tổng số giao dịch trong 1 ngày cho từng nước theo ngày JoinIn.
Trong file đính kèm, ở sheet Details, từ cột A đến F là data đã gom từ nhiều nguồn. Các cột sau là phần xử lý và các cột phụ mà GK sử dụng.
Từ data này, GK lấy 1 vài ví dụ để có thể hiểu rõ hơn:
* ClientCode 305246 (China) tham gia ngày 18 /11/2005, ngày đầu tiên giao dịch (chỉ tính trong data này) là ngày 1/1/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 4.
* ClientCode 305248 (Portugal) tham gia ngày 1/5/2010, ngày đầu tiên giao dịch là ngày 2/5/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 5.
* ClientCode 305249 (Vietnam) tham gia ngày 4/5/2010, ngày đầu tiên giao dịch là ngày 1/5/2010, tổng số giao dịch cho đến ngày 11/5/2010 là 3.
Vậy trong sheet Summary sẽ thể hiện:
Ngày 1/5/2010, có 4 giao dịch của khách hàng China, và khách hàng này join in trước tháng 5/2010.
Ngày 2/5/2010, có 5 giao dịch của khách hàng Portugal, và khách hàng này join in vào ngày 1/5/2010.
Ngày 11/5/2010, có 3 giao dịch của khách hàng Vietnam, và khách hàng này join in vào ngày 4/5/2010.
Vấn đề GK đang gặp phải như sau:
* Format của ngày: vì data này được lấy từ system, nhưng dường như PC của mỗi người lấy format ngày khác nhau nên data mà GK nhận được có format ngày theo đủ kiểu. Ở sheet Details, GK đã dùng đủ kiểu để đổi thành dạng ngày đúng, nhưng vẫn có 1 số trường hợp bị sai. Đó là những trường hợp GK uýnh dấu vàng và xanh. Các bác xem giúp GK xem có cách nào giải quyết triệt để vấn đề này không với.
* Để tìm ra được ngày đầu tiên giao dịch, GK sủ dụng công thức mảng ở cột G trong sheet Details. Điều này làm cho file chạy rất là chậm. Từ đầu năm đến giờ, data của GK đã lên tới hơn 300.000 dòng, số cột thì khoảng như trong file các bác xem. Mỗi lần nó chạy, GK chỉ còn nước chạy qua máy tính khác làm việc rồi quay lại với nó sau. Mà khổ nỗi là mỗi ngày đều update số liệu mới, sau đó lại phải chạy lại từ đầu, chứ không phải chạy 1 lần duy nhất rồi paste value được. GK tính đến giải pháp là dùng pivot table có filter, tuy nhiên như vậy thì việc kết nối data này với file khác là không khả thi. Hiện tại từ kết quả này, GK còn phải làm thêm mí bước nữa để ra kết quả khác nữa.
GK nhờ các bác xem và tư vấn cách sắp xếp data hay dùng formula nào khác mà cho nó chạy nhanh, chứ chạy thế này, sốt ruột quá ạ.
GK cám ơn các bác nhiều.
P/S: GK dùng 2007 nên đã save thành 97-2003, tuy nhiên, khi save nó cứ báo lỗi là format hay data không phù hợp với 97-2003. Vì thế GK đa paste value và uýnh thêm dấu nháy phía trước các công thức. Khi các bác chạy, vui lòng bỏ dấu nháy rồi enter hoặc Ctrl Shift Enter (cho cột G only) giúp GK.
Cám ơn các bác lần nữa.
Gia Khuê