Xin giúp code tách dòng tổng thành những dòng chi tiết với giá trị là 1

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

hunganh.nguyen

Thành viên chính thức
Tham gia
19/11/15
Bài viết
98
Được thích
20
Giới tính
Nam
Kính chào các Anh, Chị, Em!

Mình có tình huống cần tách tổng thành những dòng chi tiết với giá trị là 1 như trong file đính kèm.

Rất mong được các Anh, Chị, Em quan tâm, giúp đỡ!

Mình xin cám ơn nhiều!
 

File đính kèm

  • Tack_dong.xlsx
    10.7 KB · Đọc: 16
Kính chào các Anh, Chị, Em!

Mình có tình huống cần tách tổng thành những dòng chi tiết với giá trị là 1 như trong file đính kèm.

Rất mong được các Anh, Chị, Em quan tâm, giúp đỡ!

Mình xin cám ơn nhiều!
Trong khi chờ đợi có thể tham khảo code sau:
Mã:
Option Explicit
Sub TachTong()
Dim i&, j&, t&, k&, Lr&
Dim Arr(), KQ(), Rng As Range
With Sheet1
Lr = .Range("C10000").End(xlUp).Row
Arr = .Range("C2:D" & Lr).Value
Set Rng = .Range("D3:D" & Lr)
ReDim KQ(1 To Application.WorksheetFunction.Sum(Rng) + 1, 1 To 2)
    KQ(1, 1) = Arr(1, 1)
    KQ(1, 2) = Arr(1, 1)
t = 1
For i = 2 To UBound(Arr)
    For j = 1 To Arr(i, 2)
        t = t + 1
        KQ(t, 1) = Arr(i, 1)
        KQ(t, 2) = 1
    Next j
Next i
.Range("J2").Resize(t, 2) = KQ
End With
Msgbox "Done"
End Sub
 
Kính chào các Anh, Chị, Em!

Mình có tình huống cần tách tổng thành những dòng chi tiết với giá trị là 1 như trong file đính kèm.

Rất mong được các Anh, Chị, Em quan tâm, giúp đỡ!

Mình xin cám ơn nhiều!
Gửi trong chuyên đề Hàm và công thức, mở ra yêu cầu code. Hahaha ...

Lỡ làm công thức, gửi lên luôn. Excel 2021:

Mã:
=LET(a,SEQUENCE(SUM(D3:D13)),b,SUBTOTAL(109,OFFSET(D2,,,SEQUENCE(ROWS(D3:D13))))+1,INDEX($C$3:$C$13,MATCH(a,b,1)))
 
Thử thay đổi cột số lượng và refresh...
 

File đính kèm

  • Tack_dong11111.xlsm
    24 KB · Đọc: 7
Thử thay đổi cột số lượng và refresh...
Rất cám ơn bạn nhé!
Bài đã được tự động gộp:

Gửi trong chuyên đề Hàm và công thức, mở ra yêu cầu code. Hahaha ...

Lỡ làm công thức, gửi lên luôn. Excel 2021:

Mã:
=LET(a,SEQUENCE(SUM(D3:D13)),b,SUBTOTAL(109,OFFSET(D2,,,SEQUENCE(ROWS(D3:D13))))+1,INDEX($C$3:$C$13,MATCH(a,b,1)))
Rất cám ơn bạn đã giúp đỡ!
 
Web KT

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

Back
Top Bottom