chudoan415
Thành viên mới
- Tham gia
- 16/11/22
- Bài viết
- 49
- Được thích
- 6
- Giới tính
- Nữ
Private Sub Worksheet_Activate()
Dim dht, cht, dm, cm, sd As Integer 'dht dong hien tai, cht=cot hien tai, dm=dong moi, cm=cot moi, sd=so dong
dht = 3 'dong hien tai
cht = 3 'cot hien tai
dm = 2 ' dong moi
cm = 1 'cot moi
Sheet2.Range("2:1000").EntireRow.ClearContents 'xoa du lieu cu
While Sheet1.Cells(dht, cht + 3).Value > 0
For i = 1 To Sheet1.Cells(dht, cht + 3).Value
For j = 0 To 2
Sheet2.Cells(dm, cm + j).Value = Sheet1.Cells(dht, cht + j).Value
Next
dm = dm + 1
Next
dht = dht + 1
Wend
End Sub
Cảm ơn bạn, nhưng file mình không chạy được.Cái này chắc dùng để merge cho Word khi in nhãn ....
Nếu đúng vậy thì tìm trên diễn đàn, đã có nhiều giải pháp rồi...
Đây là 1 giải pháp cùi bắp, dùng tam chờ giải pháp hay hơn
Tạo sheet2, dán đoạn code này vào
Thay đổi số lượng ở sheet 1, qua sheet 2 kiểm tra lại kết quả...
Mã:Private Sub Worksheet_Activate() Dim dht, cht, dm, cm, sd As Integer 'dht dong hien tai, cht=cot hien tai, dm=dong moi, cm=cot moi, sd=so dong dht = 3 'dong hien tai cht = 3 'cot hien tai dm = 2 ' dong moi cm = 1 'cot moi Sheet2.Range("2:1000").EntireRow.ClearContents 'xoa du lieu cu While Sheet1.Cells(dht, cht + 3).Value > 0 For i = 1 To Sheet1.Cells(dht, cht + 3).Value For j = 0 To 2 Sheet2.Cells(dm, cm + j).Value = Sheet1.Cells(dht, cht + j).Value Next dm = dm + 1 Next dht = dht + 1 Wend End Sub
Kết quả ở bên ListMerge. Bạn xóa toàn bộ dữ liệu bên ListMerge, rồi quay qua quay lại sẽ xuất hiện trở lại.Cảm ơn bạn, nhưng file mình không chạy được.
Em chào anh/chị GPE.
Em đang làm đánh giá kết quả của các màu vải. Em đang muốn cột số lượng vải sẽ có kết quả tương ứng số dòng theo số lượng như file em đính kèm dưới đây ạ. Mong anh/chị giúp đỡ. Em cảm ơn anh/chị.
I3 =IF(ROWS($1:1)<=SUM($F$3:$F$8),INDEX(C$3:C$8,MATCH(ROWS($1:1),SUMIF(OFFSET($F$2,,,ROW($1:$6)),">0")+1)),"")
Công thức tuyệt vời. Cảm ơn anh nhiều nhá.Nhấn ctrl+Shift+EnterMã:I3 =IF(ROWS($1:1)<=SUM($F$3:$F$8),INDEX(C$3:C$8,MATCH(ROWS($1:1),SUMIF(OFFSET($F$2,,,ROW($1:$6)),">0")+1)),"")
Copy cho các ô còn lại