Lũy Kế Số Liệu Và Duy Nhất 1 Mã Khách Hàng Cùng Loại

  • Thread starter Thread starter tam8678
  • Ngày gửi Ngày gửi
Liên hệ QC

tam8678

Đời Xá Chi
Tham gia
30/4/09
Bài viết
417
Được thích
301
Nghề nghiệp
Kế toán
Tôi có 1 yêu cầu là tìm số liệu của những khách hàng có cùng tên và cùng loại thì được cộng dồn lên ( được nêu cụ thể trong file đính kèm ). Rất mong các anh em GPE xem và giúp giải quyết.
Đính kèm file.
Xin cám ơn trước.
 

File đính kèm

Lần chỉnh sửa cuối:
Tôi có 1 yêu cầu là tìm số liệu của những khách hàng có cùng tên và cùng loại thì được cộng dồn lên ( được nêu cụ thể trong file đính kèm ). Rất mong các anh em GPE xem và giúp giải quyết.
Đính kèm file.
Xin cám ơn trước.
Làm thêm cột phụ có được không?
 
Lần chỉnh sửa cuối:
Upvote 0
Làm thêm cột phụ có được không?
------------
Cám ơn bạn thanh_tks đã quan tâm đến vấn đề này. Không dùng cột phụ được bạn, có lẽ phải viết code VBA mới giải quyết được (tôi nghĩ thế )
Thân chào và mong tin.
 
Lần chỉnh sửa cuối:
Upvote 0
------------
Cám ơn bạn thanh_tks đã quan tâm đến vấn đề này. Không dùng cột phụ được bạn, có lẽ phải viết code VBA mới giải quyết được (tôi nghĩ thế )
Thân chào và mong tin.
Dùng Macro củ chuối này thử xem sao.
PHP:
Sub GPE()
[B4].Value = "Ma"
Range([A4], [B65536].End(xlUp)).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1000"), Unique:=True
R = [B1000].End(xlUp).Row
Range([C1001], [B65536].End(xlUp).Offset(, 10)).FormulaR1C1 = "=SUMPRODUCT(--(R5C1:R" & R & "C1=RC1),--(R5C2:R" & R & "C2=RC2),R5C:R" & R & "C)"
Range([A1000], [L65536].End(xlUp)).Value = Range([A1000], [L65536].End(xlUp)).Value
[5:1000].Delete
[B4].ClearContents
[F4:L4].FormulaR1C1 = "=SUM(R5C:R" & [B65536].End(xlUp).Row & "C)"
End Sub
 
Upvote 0
Dùng Macro củ chuối này thử xem sao
Rất cám ơn sự nhiệt tình và quan tâm cùa bạn huuthang_bd
Đọc mà không rõ mong bạn hướng dẩn thêm

Dùng Macro củ chuối này thử xem sao.
PHP:
Sub GPE()
[B4].Value = "Ma"
Range([A4], [B65536].End(xlUp)).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1000"), Unique:=True
R = [B1000].End(xlUp).Row
Range([C1001], [B65536].End(xlUp).Offset(, 10)).FormulaR1C1 = "=SUMPRODUCT(--(R5C1:R" & R & "C1=RC1),--(R5C2:R" & R & "C2=RC2),R5C:R" & R & "C)"
Range([A1000], [L65536].End(xlUp)).Value = Range([A1000], [L65536].End(xlUp)).Value
[5:1000].Delete
[B4].ClearContents
[F4:L4].FormulaR1C1 = "=SUM(R5C:R" & [B65536].End(xlUp).Row & "C)"
End Sub
------------
Vẫn biết có xài là tốt rồi, nhưng bạn huuthang_bd có thể xem thêm về vấn đề này 1 chút , nếu trong trường hợp sau cột L có dữ liệu nối đuôi ( của các khách hàng có chi tiết đầu kỳ ) thì giải quyết như thế nào ?
Mong tin bạn
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
------------
Vẫn biết có xài là tốt rồi, nhưng bạn huuthang_bd có thể xem thêm về vấn đề này 1 chút , nếu trong trường hợp sau cột L có dữ liệu nối đuôi ( của các khách hàng có chi tiết đầu kỳ ) thì giải quyết như thế nào ?
Mong tin bạn
Bài này anh có thể dùng Consolidate để giải quyết
- Nối cột A và B bằng công thức =A5&"-"&B5 (đặt tại cell A20 chẳng hạn)
- Copy vùng C5:L10 rồi paste vào C20
- Đặt con trỏ tại 1 cell trống, vào menu Data\Consolidate và làm giống như hình

attachment.php



- Sau khi ra kết quả, quét chọn A20 đến cell cuối cùng có dử liệu của cột A, vào menu Data\Text to Columns để tách dử liệu ra thành 2 cột
Vậy là xong!
 

File đính kèm

  • untitled1.JPG
    untitled1.JPG
    46.7 KB · Đọc: 117
Upvote 0
Tôi có 1 yêu cầu là tìm số liệu của những khách hàng có cùng tên và cùng loại thì được cộng dồn lên ( được nêu cụ thể trong file đính kèm ). Rất mong các anh em GPE xem và giúp giải quyết.
Đính kèm file.
Xin cám ơn trước.
Em xin góp ý về file sau:
- Nếu sh Data mà dòng đầu là tiêu đề và sh CongNo lấy từ Data dùng ADO là nhanh nhất.
- Nhưng mà Data anh nên sửa lại. Data là dữ liệu, congno là báo cáo. Không nên nhập Data như là 1 báo cáo. Vì anh đã muốn dùng VBA để trích xuất nên em xin góp ý.
Có gì xin anh bỏ quá.
Em thì thiết kế Data như sau:
Loai---MaKH---NgayGhiSo---LoaiVT---Note
Có thể thêm field.
Từ đó anh muốn report kểuu nào cũng OK.
 
Upvote 0
------------
Vẫn biết có xài là tốt rồi, nhưng bạn huuthang_bd có thể xem thêm về vấn đề này 1 chút , nếu trong trường hợp sau cột L có dữ liệu nối đuôi ( của các khách hàng có chi tiết đầu kỳ ) thì giải quyết như thế nào ?
Mong tin bạn
Thì bạn sửa lại code một chút. Mở rộng vùng dữ liệu ra thôi.
 
Upvote 0
Em xin góp ý về file sau:
- Nếu sh Data mà dòng đầu là tiêu đề và sh CongNo lấy từ Data dùng ADO là nhanh nhất.
- Nhưng mà Data anh nên sửa lại. Data là dữ liệu, congno là báo cáo. Không nên nhập Data như là 1 báo cáo. Vì anh đã muốn dùng VBA để trích xuất nên em xin góp ý.
Có gì xin anh bỏ quá.
Em thì thiết kế Data như sau:
Loai---MaKH---NgayGhiSo---LoaiVT---Note
Có thể thêm field.
Từ đó anh muốn report kểuu nào cũng OK.
-------------------

Bài viết trên GPE có người tham gia là mừng lắm rồi chứ có gì đâu mà bỏ qua anh ThuNghi ( hình như anh cũng là dân kế toán? ).
Thực chất Sh CongNo là sh của các file khác đổ về ( không nhập trực tiếp trên Sh này )
To Chú NDU:
Thực tế là anh thấy 1 đơn vị bạn xử lý như thế ( chính xác là họ dùng VBA ), xử lý số liệu tức thời, nhưng vì anh giỏi VBA quá nên đọc chỉ hiểu lõm bõm rằng họ dùng vòng lặp, đặt điều kiện so sánh, nếu trùng thì được cộng dồn lên và xóa dòng mới ( nên không ảnh hưởng đến dòng có trước đó ), không trùng thì giữ nguyên. Viết như thế chắc chú nghĩ ra.
Rất vui được biết anh ThuNghi
 
Upvote 0
To Chú NDU:
Thực tế là anh thấy 1 đơn vị bạn xử lý như thế ( chính xác là họ dùng VBA ), xử lý số liệu tức thời, nhưng vì anh giỏi VBA quá nên đọc chỉ hiểu lõm bõm rằng họ dùng vòng lặp, đặt điều kiện so sánh, nếu trùng thì được cộng dồn lên và xóa dòng mới ( nên không ảnh hưởng đến dòng có trước đó ), không trùng thì giữ nguyên. Viết như thế chắc chú nghĩ ra.
Ý em muốn nói rằng:
- Dù là dùng cái gì (công thức hay VBA) để xử lý thì đầu tiên ta cũng phải có 1 HƯỚNG ĐI (giải thuật)
- Nếu anh có thể giải quyết bài này bằng tay thì việc viết nó thành code hoàn toàn không có vấn đề ---> Anh có thể dùng chức năng Record macro để thực hiện
 
Upvote 0
Theo mình trường hợp của bạn tam8678 chỉ cần dùng AutoFilter và hàm Subtotal là sơ bộ giải quyết được rồi. Để hoàn thiện hơn làm 2 cái validation: Nhân viên và vật tư để chọn và nhìn thấy ĐK lọc
Bạn chọn điều kiện lọc ở 2 dấu tam giác xem sao
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom