Hong.Van
Busy
- Tham gia
- 7/5/12
- Bài viết
- 2,330
- Được thích
- 1,767
Em chào thầy cô & anh chị
Xin giúp em sửa code tính tổng cho từng nhóm như sau:
Nếu Mã là 131 thì cộng các mã con có ký tự đầu là B
Nếu Mã là 331 thì cộng các mã con có ký tự đầu là M
Nếu Mã là 1388 thì cộng các mã con có ký tự đầu là Y
Nếu Mã là 3388 thì cộng các mã con có ký tự đầu là Z
Xin vui lòng xem File, Muốn kết quả chạy code như những cell tô màu vàng
Em cảm ơn
---------
P/s: code báo lỗi ở những dòng màu đỏ
Xin giúp em sửa code tính tổng cho từng nhóm như sau:
Nếu Mã là 131 thì cộng các mã con có ký tự đầu là B
Nếu Mã là 331 thì cộng các mã con có ký tự đầu là M
Nếu Mã là 1388 thì cộng các mã con có ký tự đầu là Y
Nếu Mã là 3388 thì cộng các mã con có ký tự đầu là Z
Mã:
Sub KetQua() Dim sArray, Arr()
Dim i As Long
Dim n7 As Range, n8 As Range
Dim B As String, M As String, Y As String, Z As String
Dim Wf As WorksheetFunction
With ActiveSheet
sArray = Range([B11], [B65536].End(3)).Value
Set n7 = Range([B11], [B65536].End(3))
Set n8 = n7.Offset(, 1)
End With
ReDim Arr(1 To UBound(sArray, 1), 1 To 1)
For i = 1 To UBound(sArray, 1)
If IsNumeric(sArray(i, 1)) Then
If sArray(i, 1) = 131 Then
[COLOR=#ff0000]Arr(i, 1) = Wf.SumIf(n7, "B" & "*", n8)[/COLOR]
ElseIf sArray(i, 1) = 331 Then
[COLOR=#ff0000]Arr(i, 1) = Wf.SumIf(n7, "M" & "*", n8)[/COLOR]
ElseIf sArray(i, 1) = 1388 Then
[COLOR=#ff0000]Arr(i, 1) = Wf.SumIf(n7, "Y" & "*", n8)[/COLOR]
Else: sArray(i, 1) = 3388
[COLOR=#ff0000] Arr(i, 1) = Wf.SumIf(n7, "Z" & "*", n8)[/COLOR]
End If
End If
Next i
Range("C11").Resize(UBound(Arr, 1)).Value = Arr
End Sub
Em cảm ơn
---------
P/s: code báo lỗi ở những dòng màu đỏ
File đính kèm
Lần chỉnh sửa cuối: