nhờ anh chị xem giúp em tình huống này lọc danh sach khách hàng và số dư kh đó?

Liên hệ QC

ki_calvin

Thành viên hoạt động
Tham gia
14/7/07
Bài viết
126
Được thích
3
em muốn tìm xem khách hàng đó có số dư bao nhiều vì có trường hợp khách hàng đó có 3 hoặc 4,5 tài khoản gì đó.và vd nếu mình cần xem khách hàng nào có 300 triệu lên,thì mình xem có bao nhiêu khách hàng kiểu đó và sẻ hiện thi ra danh sach khách hảng đó,mình sẽ dựa vào số khách hàng vì tên khách hàng sẽ có thể trùng tên,mong anh chị hướng dẫn .em chân thành cảm ơn!
 
Lần chỉnh sửa cuối:
em muốn tìm xem khách hàng đó có số dư bao nhiều vì có trường hợp khách hàng đó có 3 hoặc 4,5 tài khoản gì đó.và vd nếu mình cần xem khách hàng nào có 300 triệu lên,thì mình xem có bao nhiêu khách hàng kiểu đó và sẻ hiện thi ra danh sach khách hảng đó,mình sẽ dựa vào số khách hàng vì tên khách hàng sẽ có thể trùng tên,mong anh chị hướng dẫn .em chân thành cảm ơn!
Nhìn vào cái bảng của bạn mình muốn té xỉu luôn, chừng 1000 dòng là được rồi, chi mà dữ "dậy", cách làm:
Ở Sheet 1 :Muốn tìm tài khoản thì nhập số tài khoản vào cái ô vàng vàng đó xong nhấn nút tương ứng, muốn tìm tiền trong tài khoản lớn hơn "bi nhiêu" thì nhập "bí nhiêu" xong lại nhấn nút tương ứng, qua Sheet 2 xem kết qủa
Làm xong bài này muốn "tèo" luôn
Thân
 

File đính kèm

em cám ơn !em cũng rất đau đầu vì nhiều trường hợp ,mà khả nẳng em cũng mới lớp mầm!nhưng nếu em lọc khách hàng trùng giữa 2 sheet,thì em phải làm sao ?ví dụ em có một sheet chứa 1000 khách hàng của toàn cty.nhưng em chỉ quản lý 500 trong số đó.vậy em muốn kiểm tra xem 500 khách của em có đầy đủ trong 1000 kh trong sheet 1 thì làm sao hả anh?>

ah !anh gì cho em hỏi luôn?cái file saonhieuthe anh làm cho em ,có một trường hợp có 1 khách hàng nhưng nhiều tài khoản thì mình phải dựa vào số khách hàng để lọc ra và tính đó là một khách hàng.hoặc có nhựng khách hàng có 2 đến 5 tài khoản ,nhưng số dư của từng tài khoản chưa đến 300 chẳng hạn(giả thiết điều kiện mình đưa ra là 300 đủ tiêu chuẩn đi)nhưng cộng tất cả tải khoản lại,thì đủ đến dư vậy mình sẽ tính đó là 1 khách hạn đủ điều kiện mình đưa ra.vậy anh xem có cách nào khắc phục không?vì trường hợp của anh,em đã dủng đến hàm điều kiện if a1>300,a1,0 thì em thấy cũng cho ra số lương khách hàng trên 300 mà em muốn,nhưng ngặc nổi có trường hợp như em nói khi nảy nhiều tài khoản thì không được.mong anh giúp em!cám ơn
 
Chỉnh sửa lần cuối bởi điều hành viên:
em cám ơn !em cũng rất đau đầu vì nhiều trường hợp ,mà khả nẳng em cũng mới lớp mầm!nhưng nếu em lọc khách hàng trùng giữa 2 sheet,thì em phải làm sao ?ví dụ em có một sheet chứa 1000 khách hàng của toàn cty.nhưng em chỉ quản lý 500 trong số đó.vậy em muốn kiểm tra xem 500 khách của em có đầy đủ trong 1000 kh trong sheet 1 thì làm sao hả anh?>
Câu 1: Thí dụ trong sheet CUA MINH ( ý mình nói là khách của bạn quản lý) tên khách hàng từ A1 đến A500 ,sheet CUA CONG TY ( khách toàn công ty ) từ B1 đến B10000
Ở ô B1 trong sheet CUA MINH Bạn "quánh" công thức =COUNTIF('CUA CONG TY'!$B$1:$B$10000,A1), xong bạn copy xuống tới A500, "Thằng" nào cho kết quả 1 là khách hàng đó có , còn 0 là chưa có . OK
Câu 2: Để mai làm, "bi" giờ buồn ngủ quá "zồi", thông cảm nhé
Thân
 
Bạn xem thêm trong file đính kèm

File saonhieuthe anh làm cho em ,có trường hợp 1 khách hàng nhưng nhiều tài khoản, nhự khách hàng có 2 đến 5 tài khoản ,tuy số dư của từng tài khoản chưa đến 300 chẳng hạn(giả thiết điều kiện mình đưa ra là 300 đủ tiêu chuẩn đi)nhưng cộng tất cả tải khoản lại,thì đủ đến dư vậy mình sẽ tính đó là 1 khách hạn đủ điều kiện mình đưa ra

Chú ý khi dùng:


(*) Macro lọc ra những khách hàng có số dư tổng cộng trên 300 triệu;
Khách đủ 300 tr trong 1 tài khoản không có tô màu;

(*) Tô màu là tài khoản lớn nhất trong các tài khoản của khách hàng đó (để đạt hoặc trên 300 Tr)


PHP:
Option Explicit
Sub SortMaKH()
 Const BaTram As Double = 3 * 10 ^ 8
 Dim Rng As Range, sRng As Range, Clls As Range, mRng As Range
 Dim SoDu As Double, sMax As Double, eRw As Long
 Dim MyAdd As String, Sh As Worksheet
 
 Sheets("S1").Select:                              Set Sh = Sheets("S2")
 Application.ScreenUpdating = False
 Set Rng = Range([c1], [c65500].End(xlUp))
 Columns("B:I").Sort Key1:=[C2], Order1:=xlAscending, Key2:=[D2] _
   , Order2:=xlAscending, Header:=xlGuess
 Rng.AdvancedFilter Action:=2, CopyToRange:=[N1], Unique:=True
 Sh.[B1].CurrentRegion.Offset(1, 1).ClearContents
 For Each Clls In Range([N2], [n65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      MyAdd = sRng.Address:                        sMax = 0
      SoDu = 0
      Do
         SoDu = SoDu + sRng.Offset(, 6).Value
         If sRng.Offset(, 6).Value > sMax Then
            sMax = sRng.Offset(, 6).Value:         Set mRng = sRng
          End If
         Set sRng = Rng.FindNext(sRng)
      Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
      If SoDu >= BaTram Then
         With Sh.[c65500].End(xlUp).Offset(1)
            .Offset(, -1).Resize(, 8).Value = mRng.Offset(, -1).Resize(, 8).Value
            If mRng.Offset(, 6) < BaTram Then _
               .Interior.ColorIndex = 35 + .Row Mod 6
            Set mRng = Nothing
         End With
      End If
   End If
 Next Clls
 Sh.Select:                                        Set Sh = Nothing
End Sub
:-= --=0 :-=
 

File đính kèm

ah thế làm sao mình có thể lọc ra những khách hàng đó hả anh?nhựng khách hàng đủ 300tr trở lên?còn lại số dư dưới 300 thì không lọc.mong anh hướng dẫn thêm,!
 
Em cũng rất đau đầu vì nhiều trường hợp

Mình thì lại đau đầu vì không thể hiểu bạn viết gì! Bạn thử đưa cho đồng nghiệp đọc xem có hiểu không?

Bài gần đây mình đã lọc ra hai loại khách hàng;

(1) Có số dư trong 1 tài khoản => 300 triệu;

(2) Loại thứ hai, có nhiều tài khoản công lại dư so với 300 triệu; Trường hợp này mình đã đưa ra tài khoản có số dư lớn nhất từ các tài khoản của anh ta.

Còn bạn viết:
ah thế làm sao mình có thể lọc ra những khách hàng đó hả anh?nhựng khách hàng đủ 300tr trở lên?còn lại số dư dưới 300 thì không lọc.mong anh hướng dẫn thêm,!

Là muốn lọc loại nào đây? Hết kiên nhẫn với bạn rồi! Bye!
 

File đính kèm

em cám ơn mọi người.anh thanh-tks hiểu ý em rối đó.và cũng cảm ơn anh sa-qd.vì ý em là em muốn tạo ra một sheet loc hẳn ra luôn.thì em không phải copy thủ công ra 1 sheet khác về các giá trị cần tìm.ah em muốn hỏi các anh liệu trong excel mình có thể tạo ra sô điếm thứ tư không.ý em là trong trường hợp như anh thanh-kts sau khi loc ra được những khách hàng đó rồi.thì làm sao mình biết là có bao nhiêu người mình sẽ dùng công thức gì để excel hiểu ra 1 số khách hàng là 1 ,nếu trường hợp có 2 số khách hàng tiếp theo ,sẻ hiểu là 2,giống như thế này:
 
anh xem dùm em như thế này?
 
Lần chỉnh sửa cuối:
Bạn chạy macro này trên file của bạn; chúc thành công.

anh xem dùm em như thế này?
PHP:
 Option Explicit
Sub Macro2()
 Dim Rng As Range, sRng As Range, Clls As Range
 Dim SoTT As Long
 
 Sheets("Loc").Select
 Columns("A:A").Insert Shift:=xlToRight
 Set Rng = Range("F2:F" & [f65500].End(xlUp).Row)
 Rng.AdvancedFilter Action:=2, CopyToRange:=[A2], Unique:=True
 
 For Each Clls In Range([A3], [A65500].End(xlUp))
   SoTT = 1 + SoTT
   Set sRng = Rng.Find(Clls.Value, , xlValues, xlWhole)
      If Not sRng Is Nothing Then
      Cells(sRng.Row, "B") = SoTT
   End If
 Next Clls
 Columns("A:A").Select
 Selection.Delete Shift:=xlToLeft 
End Sub
 
Web KT

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

Back
Top Bottom