Nhờ giúp công thức lọc dữ liệu từ Sheet khác

Liên hệ QC

thuhiennguyen1888

Thành viên chính thức
Tham gia
16/10/14
Bài viết
78
Được thích
0
Chào các Bạn,
Trong file đính kèm mình muốn tìm Công thức để lấy dữ liệu từ Sheet2 sang Sheet 1.
Ở Sheet1, từ A14:T16 hiển thị dữ liệu khi Bảng ở Sheet2 có những cặp số = 0, dữ liệu hiển thị là đối chiếu Bảng ở Sheet2 lấy các ký tự ở hàng 2 (C2:AH2): A,U,T,2,3,4,5,6,7,8,9 ghép với các số ở cột A8:A17: 0,1,2,3,4,5,6,7,8,9
Tương tự từ A30:T32 hiển thị dữ liệu khi Bảng ở Sheet2 có những cặp số có tổng > 6.
Rất mong nhận được sự giúp đỡ của các Bạn.
Cám ơn các Bạn nhiều.
 

File đính kèm

Lần chỉnh sửa cuối:
Chào các Bạn,
Trong file đính kèm mình muốn tìm Công thức để lấy dữ liệu từ Sheet2 sang Sheet 1.
Ở Sheet1, từ A14:T16 hiển thị dữ liệu khi Bảng ở Sheet2 có những cặp số = 0, dữ liệu hiển thị là đối chiếu Bảng ở Sheet2 lấy các ký tự ở hàng 2 (C2:AH2): A,U,T,2,3,4,5,6,7,8,9 ghép với các số ở cột A8:A17: 0,1,2,3,4,5,6,7,8,9
Tương tự từ A30:T32 hiển thị dữ liệu khi Bảng ở Sheet2 có những cặp số có tổng > 6.
Rất mong nhận được sự giúp đỡ của các Bạn.
Cám ơn các Bạn nhiều.
Dùng code này xem sao
Dữ liệu sheet1 và sheet2 bố trí khác nhau nên dán kết quả vào cuối sheet2

Mã:
Public Sub Tim_Tong()
Dim Nguon, Tong, Cot, Dong, kq(), r As Long, c As Long, i0, i6, j0, j6

With Sheet2
Cot = .Range("C2:AH2")
Dong = .Range("A8:A17")
Nguon = .Range("C8:AH17")
End With
ReDim kq0(1 To UBound(Nguon), 1 To UBound(Nguon, 2))
ReDim kq6(1 To UBound(Nguon), 1 To UBound(Nguon, 2))

For c = 1 To UBound(Nguon, 2) - 1 Step 3
i0 = 0
i6 = 0
For r = 1 To UBound(Nguon)
Tong = Nguon(r, c) + Nguon(r, c + 1)

If Tong = 0 Then
i0 = i0 + 1
kq0(i0, c) = Cot(1, c) & Dong(r, 1)
Else
If Tong > 6 Then
i6 = i6 + 1
kq6(i6, c) = Cot(1, c) & Dong(r, 1)
End If
End If

If j0 < i0 Then j0 = i0
If j6 < i6 Then j6 = i6
Next r
Next c

Sheet2.Range("C20:AH10000").ClearContents
Sheet2.Range("C20").Resize(j0, UBound(kq0, 2)).Value = kq0
Sheet2.Range("C20").Offset(j0 + 2).Resize(j6, UBound(kq6, 2)).Value = kq6

End Sub
 

File đính kèm

Dùng code này xem sao
Dữ liệu sheet1 và sheet2 bố trí khác nhau nên dán kết quả vào cuối sheet2

Mã:
Public Sub Tim_Tong()
Dim Nguon, Tong, Cot, Dong, kq(), r As Long, c As Long, i0, i6, j0, j6

With Sheet2
Cot = .Range("C2:AH2")
Dong = .Range("A8:A17")
Nguon = .Range("C8:AH17")
End With
ReDim kq0(1 To UBound(Nguon), 1 To UBound(Nguon, 2))
ReDim kq6(1 To UBound(Nguon), 1 To UBound(Nguon, 2))

For c = 1 To UBound(Nguon, 2) - 1 Step 3
i0 = 0
i6 = 0
For r = 1 To UBound(Nguon)
Tong = Nguon(r, c) + Nguon(r, c + 1)

If Tong = 0 Then
i0 = i0 + 1
kq0(i0, c) = Cot(1, c) & Dong(r, 1)
Else
If Tong > 6 Then
i6 = i6 + 1
kq6(i6, c) = Cot(1, c) & Dong(r, 1)
End If
End If

If j0 < i0 Then j0 = i0
If j6 < i6 Then j6 = i6
Next r
Next c

Sheet2.Range("C20:AH10000").ClearContents
Sheet2.Range("C20").Resize(j0, UBound(kq0, 2)).Value = kq0
Sheet2.Range("C20").Offset(j0 + 2).Resize(j6, UBound(kq6, 2)).Value = kq6

End Sub

Cám ơn Bạn, liệu có thể dùng công thức thông thường trong trường hợp này không nhỉ?
 
Web KT

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

Back
Top Bottom