tuanhuycntt
Thành viên chính thức


- Tham gia
- 5/7/15
- Bài viết
- 65
- Được thích
- 5
Đầu bài:
- Nhập dữ liệu tại Sheet8 từ cột [A : P] dữ liệu khá nhiều tầm 20000 dòng
- Lọc trùng và Copy các cột A, C, D, J, L chuyển sang Sheet6
- Lọc riêng dữ liệu bị trùng và chuyển sang Sheet7
Em đang dùng Marco ghi lại các thao tác làm và có sửa lại 1 chút code. Nhưng hiện đang mắc ở 1 chỗ em muốn tạo 1 Hàm XOA_DU_LIEU được gọi tên từ biến ngoài với biến tương ứng là các sheet vì Copy sang 2 Sheet khác nhau mà dùng 2 dòng lệnh dài như thế để xóa thì không tối ưu (mặc dù Code Marco xóa chưa được tối ưu cho lắm).
Em đã code thử mấy lần nhưng nó không hoạt động được.
Anh/chị/em GPE hỗ trợ giúp em sửa lỗi với ạ
Đoạn code như này:
- Nhập dữ liệu tại Sheet8 từ cột [A : P] dữ liệu khá nhiều tầm 20000 dòng
- Lọc trùng và Copy các cột A, C, D, J, L chuyển sang Sheet6
- Lọc riêng dữ liệu bị trùng và chuyển sang Sheet7
Em đang dùng Marco ghi lại các thao tác làm và có sửa lại 1 chút code. Nhưng hiện đang mắc ở 1 chỗ em muốn tạo 1 Hàm XOA_DU_LIEU được gọi tên từ biến ngoài với biến tương ứng là các sheet vì Copy sang 2 Sheet khác nhau mà dùng 2 dòng lệnh dài như thế để xóa thì không tối ưu (mặc dù Code Marco xóa chưa được tối ưu cho lắm).
Em đã code thử mấy lần nhưng nó không hoạt động được.
Anh/chị/em GPE hỗ trợ giúp em sửa lỗi với ạ
Đoạn code như này:
PHP:
Sub LOC_TRUNG()
'Sheet6.Range("A:AI").Clear
Sheet8.Range("A:P").Copy Destination:=Sheet6.Range("A1") 'copy
ActiveSheet.Range("A:P").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), Header:=xlYes
Rem xóa
Call XOA_DU_LIEU()
End Sub
Sub XOA_DU_LIEU()
Dim SheetName As String
Dim ws As Worksheet
SheetName = Sheet6.Name
Debug.Print SheetName
Set ws = Worksheets(SheetName)
With ws
Columns("B:B").Select
Selection.Delete Shift:=xlToLeft
Columns("D:H").Select
Selection.Delete Shift:=xlToLeft
Columns("E:E").Select
Selection.Delete Shift:=xlToLeft
Columns("F:I").Select
Selection.Delete Shift:=xlToLeft
End With
End Sub