Hoàng Nhật Phương
Thành viên gắn bó
![](/diendan/data/PhoToDanhHieu/pip.gif)
![](/diendan/data/PhoToDanhHieu/pip.gif)
![](/diendan/data/PhoToDanhHieu/pip.gif)
- Tham gia
- 5/11/15
- Bài viết
- 1,895
- Được thích
- 1,219
Xin chào các bạn,
Tôi muốn lấy dữ liệu từ sheet 1 sang sheet 2 theo điều kiện.
và tôi đã viết 1 code sau:
Nhưng tốc độ xử lý rất chậm,
Nhờ các bạn giúp đỡ tôi 1 code khác ạ.
Tôi muốn lấy dữ liệu từ sheet 1 sang sheet 2 theo điều kiện.
và tôi đã viết 1 code sau:
Mã:
Sub CopyIf()
Dim lastRow As Long
Dim rngMS As Range, rng As Range, codeSff As Range
Dim nameCol As Range
With Sheet2
lastRow = Sheet1.Cells(Rows.Count, "A").End(xlUp).Row
Set rngMS = Sheet1.Range("A7:A" & lastRow)
Set nameCol = .Range("A8:AFO8")
.Rows("53:66").ClearContents
For Each codeSff In nameCol
For Each rng In rngMS
If rng.Value = codeSff.Value Then
rng.Offset(0, 6).Resize(, 11).Copy
codeSff.Offset(45, 0).PasteSpecial _
Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, _
SkipBlanks:=False, _
Transpose:=True
End If
Next rng
Next codeSff
End With
End Sub
Nhưng tốc độ xử lý rất chậm,
Nhờ các bạn giúp đỡ tôi 1 code khác ạ.