vinhthinhnd
Thành viên mới
- Tham gia
- 15/10/18
- Bài viết
- 5
- Được thích
- 1
Bài này dùng công thức thì hơi vất vả đó bạn, dùng VBA sẽ tiện hơn.Các bác giúp em trường hợp này với ạ
em muốn các mã trùng nhau dữ liệu sẽ được thống kê thành một dòng tương ứng với mã đó. các dữ liệu ngăn cách nhau bằng dấu "+"
em dùng hàm vlookup nhưng nó chỉ được 1 giá trị thôi ạ
em cảm ơn ah.
Bạn làm một ví dụ cho mình xem vơi. Mình làm Ko được. Cảm ơn bạnBạn làm một ví dụ cho mình với. Mình làm không được. Cảm ơn bạn
Bạn đưa file giả định lên, chắc sẽ có nhiều người giúp bạn.Các bác giúp em trường hợp này với ạ
em muốn các mã trùng nhau dữ liệu sẽ được thống kê thành một dòng tương ứng với mã đó. các dữ liệu ngăn cách nhau bằng dấu "+"
em dùng hàm vlookup nhưng nó chỉ được 1 giá trị thôi ạ
em cảm ơn ah.
Nếu Excel của bạn có hàm TEXTJOIN , thử dùng công thức mảng:em muốn các mã trùng nhau dữ liệu sẽ được thống kê thành một dòng tương ứng với mã đó. các dữ liệu ngăn cách nhau bằng dấu "+"
Của bạn đây, không biết có đúng ý không. Hãy thêm dữ liệu vào và chạy code nhé!Các bác giúp em trường hợp này với ạ
em muốn các mã trùng nhau dữ liệu sẽ được thống kê thành một dòng tương ứng với mã đó. các dữ liệu ngăn cách nhau bằng dấu "+"
File này nếu thêm 1 điều kiện phân loại theo từng mức giá trị được không bạn (hình minh họa)Của bạn đây, không biết có đúng ý không. Hãy thêm dữ liệu vào và chạy code nhé!
Code học mót của các anh chị em trên Diễn đàn.
Của bạn đây. thêm dữ liệu vào chạy thử.File này nếu thêm 1 điều kiện phân loại theo từng mức giá trị được không bạn (hình minh họa)
View attachment 259941
VD: gộp mỗi loại A, B , C thành 1 dòng duy nhất. Sau đó muốn biết có bao nhiêu bill nằm trong phân khúc giá nào (>100,000 <250,000 / >1,000,000...)
cảm ơn bạn nhé.Của bạn đây. thêm dữ liệu vào chạy thử.
Sub TACH()
Dim dic As New Scripting.Dictionary
Dim i As Long
Dim j As Long
Dim t&
Dim Arr()
Dim KQ()
Dim d As Long
With Sheet1
d = .Range("A" & Rows.Count).End(xlUp).Row
Arr = .Range("A2:C" & d).Value
ReDim KQ(1 To UBound(Arr), 1 To 5)
For i = 1 To UBound(Arr)
DK = Arr(i, 1)
If Not dic.Exists(DK) Then
t = t + 1
dic.Add DK, t
KQ(t, 1) = DK
KQ(t, 2) = Arr(i, 2)
If Arr(i, 3) <= 500000 Then
KQ(t, 3) = KQ(t, 3) + 1
ElseIf Arr(i, 3) > 500000 And Arr(i, 3) <= 1000000 Then
KQ(t, 4) = KQ(t, 4) + 1
Else
KQ(t, 5) = KQ(t, 5) + 1
End If
Else
j = dic.Item(DK)
KQ(j, 2) = KQ(j, 2) & "+" & Arr(i, 2)
If Arr(i, 3) <= 500000 Then
KQ(t, 3) = KQ(t, 3) + 1
ElseIf Arr(i, 3) > 500000 And Arr(i, 3) <= 1000000 Then
KQ(t, 4) = KQ(t, 4) + 1
Else
KQ(t, 5) = KQ(t, 5) + 1
End If
End If
Next i
If t Then .[E2].Resize(t, 5) = KQ
End With
Set dic = Nothing
MsgBox " XONG RÔI, HAY GUI LOI C?M ON ÐÊN BQT DIÊN ÐAN NHÉ!"
End Sub
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 1
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 2