Copy có Điều kiện dữ liệu từ sheet ngày sang sheet khác bằng VBA. (1 người xem)

  • Thread starter Thread starter mrloe
  • Ngày gửi Ngày gửi
Liên hệ QC

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

mrloe

Thành viên chính thức
Tham gia
2/7/14
Bài viết
52
Được thích
7
Trong một lần lang thang search trên google, em kiếm được file copy có điệu kiện dữ liệu trong cùng 1 sheet.

Giờ em muốn thay đổi kiểu copy từ sheet này sang sheet khác (copy có điệu kiện, điều kiện xáo trộn) thì em thay đổi đoạn code VBA kia như thế nào đây ah.

Rất mong được các bậc tiền bối chỉ giáo.

Em cảm ơn nhiều ah.

(các bác xem sheet4 ở file đính kèm nhé: http://www.4shared.com/office/nyuw1YpKba/Find_Worksheet.html?)
 
Trong một lần lang thang search trên google, em kiếm được file copy có điệu kiện dữ liệu trong cùng 1 sheet.

Giờ em muốn thay đổi kiểu copy từ sheet này sang sheet khác (copy có điệu kiện, điều kiện xáo trộn) thì em thay đổi đoạn code VBA kia như thế nào đây ah.

Rất mong được các bậc tiền bối chỉ giáo.

Em cảm ơn nhiều ah.

(các bác xem sheet4 ở file đính kèm nhé: http://www.4shared.com/office/nyuw1YpKba/Find_Worksheet.html?)

Cái file này đang ở đâu thế
 
Upvote 0
Download ở đường link đính kèm đó bác.

Em vừa kiểm tra, vẫn ok mà.
 
Upvote 0
Chưa có anh/chị nào bớt ít time ra trợ giúp em sao.

Em cần dùng rồi mà.

Thanks!
 
Upvote 0
Em có để link download ở trên đấy ah.

Trong phần trả lời này không có chỗ cho em đính kèm file anh ah.

Thân ái!
 
Upvote 0

File đính kèm

Upvote 0
File thì xem rồi nhưng không hiểu bạn cần gì hết ráo


Em nói rõ hơn với file mới up lên: Em đã tạo sheet2 và muốn có dữ liệu ở cột Name theo điều ID, bảng gốc có IDName là ở sheet1.

Ý em là: Kết quả thể hiện giống như em dùng hàm Vlookup(...). Nhưng ở đây em muốn dùng là VBA.

Em cảm ơn nhiều ah.
 
Upvote 0
Em nói rõ hơn với file mới up lên: Em đã tạo sheet2 và muốn có dữ liệu ở cột Name theo điều ID, bảng gốc có IDName là ở sheet1.

Ý em là: Kết quả thể hiện giống như em dùng hàm Vlookup(...). Nhưng ở đây em muốn dùng là VBA.

Em cảm ơn nhiều ah.
Nhưng file bạn đưa lên chỉ có 1 sheet ai biết đường đâu mà lần chứ
 
Upvote 0
Upvote 0
PHP:
Sub ID_Find()
On Error Resume Next
Dim ID As Range
With Sheets("Sheet2")
   For Each ID In .Range(.[B2], .[B65536].End(3))
      If ID.Value <> "" Then
         ID.Offset(, 1) = Sheets("Sheet1").[J:J].Find(ID, , , 1).Offset(, 1)
      End If
   Next
End With
End Sub


Vâng, em cảm ơn anh rất nhiều ah.

Dựa vào đoạn code của anh, em sẽ chế biết thêm nhiều món khác.

Thanks!
 
Upvote 0
PHP:
Sub ID_Find()
On Error Resume Next
Dim ID As Range
With Sheets("Sheet2")
   For Each ID In .Range(.[B2], .[B65536].End(3))
      If ID.Value <> "" Then
         ID.Offset(, 1) = Sheets("Sheet1").[J:J].Find(ID, , , 1).Offset(, 1)
      End If
   Next
End With
End Sub

Theo em hiểu thì: Hàm điều kiện kia (If ID.Value <> "" Then) đang bẫy lỗi ID không xuất hiện trong Sheet2.

Giờ em muốn bẫy lỗi ID không xuất hiện trong Sheet1 thì em thay đổi chỗ nào ạ?

Lý do: Một số ID đang nghỉ chế độ Thai sản, do đó không có bất kỳ 1 giờ công nào, nhưng họ lại được Bảo hiểm chi trả chế độ thai sản => ID này ko xuất hiện ở Sheet1 nhưng lại xuất hiện ở Sheet2.

Và em đã thử bấm nút cho đoạn code trên chạy thì kết quả em nhận được ở tất cả các ID xuất hiện ở sheet2.

Thanks!
 
Upvote 0
PHP:
Sub ID_Find()
Dim ID As Range, Found As Range
With Sheets("Sheet2")
   For Each ID In .Range(.[B2], .[B65536].End(3))
      If ID.Value <> "" Then
         Set Found = Sheets("Sheet1").[J:J].Find(ID, , , 1)
         If Not Found Is Nothing Then
            ID.Offset(, 1) = Found.Offset(, 1)
         Else
            MsgBox "Khong tim thay ID " & ID, vbCritical
         End If
      End If
   Next
End With
End Sub
 
Upvote 0
Cần gì thì gởi file trực tiếp lên diễn đàn, xoá hết dữ liệu cho nhẹ file, chỉ để lại khoảng 100 dòng là đủ để code. Nói rõ yêu cầu là xong
em có 1 file này cần hoàn thành, mà không biết tìm sự giúp đỡ ở đâu, bác nào rành macro xin giúp đỡ ạ, chân thành cảm ơn!
 

File đính kèm

Upvote 0
Web KT

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

Back
Top Bottom