Em đang nghiên cứu code Update dữ liệu từ các file khác nhau. Nếu số lượng dữ liệu lên nhiều (khoảng 1000) là nó chạy lâu quá
(Em không up dược file nên up code)
Các bác có cao kiến gì thì giúp em với ạ!
Các cao thủ giúp em vụ này với ạ.
Many thanks!
PHP:
Sub Example5()
Dim basebook As Workbook
Dim mybook As Workbook
Dim sourceRange As Range
Dim destrange As Range
Dim n As Long, rNum As Long
Dim i As Long, j As Long
Dim SourceEndRow As Long
Dim DestEndRow As Long
Dim MyPath As String
Dim SaveDriveDir As String
Dim FName As Variant
SaveDriveDir = CurDir
On Error Resume Next
MyPath = "C:\"
ChDrive MyPath
ChDir MyPath
FName = Application.GetOpenFilename(filefilter:="Excel Files (*.xls), *.xls", MultiSelect:=True)
If IsArray(FName) Then
Application.ScreenUpdating = False
Set basebook = ActiveWorkbook
rNum = 1
For n = LBound(FName) To UBound(FName)
Set mybook = Workbooks.Open(FName(n))
'Xac dinh dong cuoi cung cua du lieu can copy va dich copy den
SourceEndRow = mybook.Sheets(1).Range("A60000").End(xlUp).Row
DestEndRow = basebook.Sheets(1).Range("A60000").End(xlUp).Row
For i = 2 To SourceEndRow
For j = 2 To DestEndRow
If mybook.Sheets(1).Range("A" & i).Value = basebook.Sheets(1).Range("A" & j).Value Then
basebook.Sheets(1).Range("B" & j).Value = mybook.Sheets(1).Range("B" & i).Value
basebook.Sheets(1).Range("C" & j).Value = mybook.Sheets(1).Range("C" & i).Value
End If
Next j
Next i
'Dong file
mybook.Close False
Next n
End If
'Tra ve mac dinh truoc khi mo
ChDrive SaveDriveDir
ChDir SaveDriveDir
Application.ScreenUpdating = True
End Sub
Các bác có cao kiến gì thì giúp em với ạ!
Các cao thủ giúp em vụ này với ạ.
Many thanks!
Chỉnh sửa lần cuối bởi điều hành viên: