zozo_online
Thành viên mới

- Tham gia
- 13/8/15
- Bài viết
- 3
- Được thích
- 0
1/ Bạn nên đăng bài trong Box Lập trình với Excel (chỉ nhấn nút là xong), tiêu đề bài viết nên cụ thể rõ ràng là "Giúp code gộp nhiều nội dung trong cột D tương ứng với ngày của cột B vào 1 Cell"Theo điều kiện ở cột B (Ngày/tháng/năm) lấy hết dữ liệu ở cột D (tương ứng) đưa thành 1 dòng
chả là nhật ký thi công công trình nên em phải làm nhiều lần. mong các bác giúp đỡ
1/ Bạn nên đăng bài trong Box Lập trình với Excel (chỉ nhấn nút là xong), tiêu đề bài viết nên cụ thể rõ ràng là "Giúp code gộp nhiều nội dung trong cột D tương ứng với ngày của cột B vào 1 Cell"
2/ Nội dung bạn cần nêu rõ là cần gộp nhiều nội dung trong cột D tương ứng với ngày của cột B vào 1 Cell và nên có 1 sheet với vài kết quả cần gộp để mọi thành viên dễ hiểu hơn.
3/ Tiêu đề bài viết của bạn đang vi phạm nội quy, đọc lại nội qu
Tôi cũng là thành viên bình thường như bạn nên không thể giúp chuyển bài được.Bài đã được tự động gộp:
Em cảm ơn bác, bác có thể chuyển giúp em sang Box Lập trình với Excel. tại em chỉ vào đây tìm tài liệu, chưa đang bài nên không rõ lắm ạ
Nếu tôi không lầm thì trong box "Những vấn đề chung" đâu có cấm dùng code mà phải chuyển.Em cảm ơn bác, bác có thể chuyển giúp em sang Box Lập trình với Excel.
Theo điều kiện ở cột B (Ngày/tháng/năm) lấy hết dữ liệu ở cột D (tương ứng) đưa thành 1 dòng (như ở ô F6)
chả là nhật ký thi công công trình nên em phải làm nhiều lần. mong các bác giúp đỡ
Sub NhatKyThiCong()
Dim Nguon, Dong
Dim Max_, Min_
Dim Kq
Dim i, k
With Sheet1
i = .Range("A5").End(xlDown).Row
Nguon = Sheet1.Range("A5", "D" & i)
End With
Dong = UBound(Nguon)
Max_ = CLng(Nguon(Dong, 1))
Min_ = CLng(Nguon(2, 1))
ReDim Kq(Min_ To Max_, 1 To 2)
For i = 2 To Dong
If Nguon(i, 4) <> "" Then
k = CLng(Nguon(i, 1))
If Kq(k, 1) = "" Then
Kq(k, 1) = Nguon(i, 1)
Kq(k, 2) = Nguon(i, 4)
Else
Kq(k, 2) = Kq(k, 2) & Chr(10) & Nguon(i, 4)
End If
End If
Next i
With Sheet1
.Range("E6").Resize(Max_ - Min_ + 1, 2) = Kq
.Range("E6").Resize(Max_ - Min_ + 1, 2).WrapText = 1
.Range("E6").Resize(Max_ - Min_ + 1, 2).Rows.AutoFit
End With
End Sub
Em cảm ơn bác rất nhiều ạ.Mã:Sub NhatKyThiCong() Dim Nguon, Dong Dim Max_, Min_ Dim Kq Dim i, k With Sheet1 i = .Range("A5").End(xlDown).Row Nguon = Sheet1.Range("A5", "D" & i) End With Dong = UBound(Nguon) Max_ = CLng(Nguon(Dong, 1)) Min_ = CLng(Nguon(2, 1)) ReDim Kq(Min_ To Max_, 1 To 2) For i = 2 To Dong If Nguon(i, 4) <> "" Then k = CLng(Nguon(i, 1)) If Kq(k, 1) = "" Then Kq(k, 1) = Nguon(i, 1) Kq(k, 2) = Nguon(i, 4) Else Kq(k, 2) = Kq(k, 2) & Chr(10) & Nguon(i, 4) End If End If Next i With Sheet1 .Range("E6").Resize(Max_ - Min_ + 1, 2) = Kq .Range("E6").Resize(Max_ - Min_ + 1, 2).WrapText = 1 .Range("E6").Resize(Max_ - Min_ + 1, 2).Rows.AutoFit End With End Sub