tranlamtra
Thành viên mới

- Tham gia
- 1/11/18
- Bài viết
- 4
- Được thích
- 0
ĐÂY EM XEM NHÉ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
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 ạĐÂY EM XEM NHÉ
em thay bằng code này nhé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
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 ạ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