[HELP] Cần giúp về vấn đề macro kết hợp lọc dữ liệu (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

tranlamtra

Thành viên mới
Tham gia
1/11/18
Bài viết
4
Được thích
0
Em là newbie , em đang dùng macro kết hợp lọc để xuất dữ liệu. Nhưng vấn đề ở chổ em muốn biến đổi nó thành kiểu nhập lưu. Khi nhập lọc thì dữ liệu trả về dòng cuối kế tiếp chứ không phải thay thế dữ liệu lần nhập trước. Các pro giúp em với, em đội ơn nhiều
 

File đính kèm

Em là newbie , em đang dùng macro kết hợp lọc để xuất dữ liệu. Nhưng vấn đề ở chổ em muốn biến đổi nó thành kiểu nhập lưu. Khi nhập lọc thì dữ liệu trả về dòng cuối kế tiếp chứ không phải thay thế dữ liệu lần nhập trước. Các pro giúp em với, em đội ơn nhiều
ĐÂY EM XEM NHÉ
 

File đính kèm

ôi...cảm ơn anh nhiều nhiều lắm :((((
 
híc anh ơi. em áp dụng công thức của anh vào file chính của em lại không được ạ :(
Anh giúp em làm cái file chính của em với ạ. Nó chỉ khác là xuất dữ liệu thêm 2 cột nữa thôi ạ. Dữ liệu vẫn ở tên Sheet1 và Sheet2 như bài ví dụ nha anh. Chân thành cảm ơn anh nhiều
 

File đính kèm

híc anh ơi. em áp dụng công thức của anh vào file chính của em lại không được ạ :(
Anh giúp em làm cái file chính của em với ạ. Nó chỉ khác là xuất dữ liệu thêm 2 cột nữa thôi ạ. Dữ liệu vẫn ở tên Sheet1 và Sheet2 như bài ví dụ nha anh. Chân thành cảm ơn anh nhiều
em thay bằng code này nhé
Mã:
Sub nhap()
Dim a As Long, dk As String, b As Long
Dim arr
dk = Sheet3.Range("B1").Value
arr = Sheet2.Range("a2:d21" & Sheet1.Range("c" & Rows.Count).End(xlUp).Row).Value
ReDim arr1(1 To UBound(arr, 1), 1 To 3)
For i = 1 To UBound(arr, 1)
    If UCase(arr(i, 1)) = UCase(dk) Then
       a = a + 1
       arr1(1, 1) = arr(i, 1)
       arr1(a, 2) = arr(i, 3)
       arr1(a, 3) = arr(i, 4)
    End If
Next i
b = Sheet3.Range("c" & Rows.Count).End(xlUp).Row + 1
If a Then Sheet3.Range("b" & b).Resize(a, 3).Value = arr1
End Sub
 
em thay bằng code này nhé
Mã:
Sub nhap()
Dim a As Long, dk As String, b As Long
Dim arr
dk = Sheet3.Range("B1").Value
arr = Sheet2.Range("a2:d21" & Sheet1.Range("c" & Rows.Count).End(xlUp).Row).Value
ReDim arr1(1 To UBound(arr, 1), 1 To 3)
For i = 1 To UBound(arr, 1)
    If UCase(arr(i, 1)) = UCase(dk) Then
       a = a + 1
       arr1(1, 1) = arr(i, 1)
       arr1(a, 2) = arr(i, 3)
       arr1(a, 3) = arr(i, 4)
    End If
Next i
b = Sheet3.Range("c" & Rows.Count).End(xlUp).Row + 1
If a Then Sheet3.Range("b" & b).Resize(a, 3).Value = arr1
End Sub
hi được rồi. thank anh nhiều ạ
 
Web KT

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

Back
Top Bottom