Lấy dữ liệu từ file excel khác theo nhiều điều kiện (Dùng VBA)
Em có 1 file DATA có hơn 500.000 dòng, dung lượng gần 100mb, rất bất tiện khi thao tác trên file đó.
Giờ em muốn tạo 1 file excel khác dùng để lấy dữ liệu, lọc theo nhiều điều kiện thì phải làm thế nào (Không mở file DATA)
– Do file Data quá lớn nên em đã xóa bớt dòng và 1 số sheel khác để giảm dung lượng (Để lại còn 3000 dòng)
– Tại file lấy dữ liệu: khi nhập điều kiện lấy theo tháng vào ô D1, D2 và số tiền vào ô F1, F2 thì khi lấy dữ liệu nó sẽ lọc dữ liệu theo các điều kiện trên (Nếu D1, D2 hoặc F1, F2 trống thì lấy tất cả mà lọc theo điều kiện còn lại)
2444
Mong mọi người giúp em với
Em chần thành cảm ơn
Thử code này nhé.Bạn chỉnh lại dữ liệu Data.Như ảnh dưới và chỉnh lại đường link nhé.
2445
Sub laydulieu()
Dim duonglink As String, thangbd As Integer, thangkt As Integer, tien1 As Double, tien2 As Double
Dim cn As Object, rst As Object, pro As String, Ext As String, Sql As String
Set cn = CreateObject("ADODB.connection")
Set rst = CreateObject("ADODB.recordset")
pro = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
Ext = ";Extended Properties=""Excel 12.0;HDR=No;IMEX= 2"";"
duonglink = ThisWorkbook.Path & "DATA (2).xlsx" 'chinh lai cho chuan duong dan
With Sheets("sheet1")
thangbd = .Range("D1").Value
thangkt = .Range("D2").Value
tien1 = .Range("F1").Value
tien2 = .Range("f2").Value
.Range("A5:F5000").ClearContents
End With
cn.Open (pro & duonglink & Ext)
Sql = "SELECT * from [sheet3$A5:F100000] WHERE F5 BETWEEN " & thangbd & " and " & thangkt & " AND F6 BETWEEN " & tien1 & " and " & tien2 & ";"
rst.Open Sql, cn
Sheet1.Range("A5").CopyFromRecordset rst
rst.Close
cn.Close
End Sub
Cho mình hỏi Đoạn mã:
Sql = "SELECT * from [sheet3$A5:F100000] WHERE F5 BETWEEN " & thangbd & " and " & thangkt & " AND F6 BETWEEN " & tien1 & " and " & tien2 & ";"
Vậy WHERE F5 BETWEEN và AND F6 BETWEEN có nghĩa là gì vậy ?
Sao không phải là E2 và F2
Nó là cột thứ 5 và thứ 6 trong dữ liệu data tương ứng với cột tháng và cột tiền nhé.
www.giaiphapexcel.com/diendan/threads/l%C3%A2%CC%81y-d%C6%B0%CC%83-li%C3%AA%CC%A3u-t%C6%B0%CC%80-file-excel-kha%CC%81c-theo-nhi%C3%AA%CC%80u-%C4%91i%C3%AA%CC%80u-ki%C3%AA%CC%A3n-du%CC%80ng-vba.150521/
Xây dựng Lương 3P, KPI cho Doanh nghiệp
Làm thế nào để trả lương cho nhân viên chính xác nhất? Đây là một trong những câu hỏi khó trong quản trị nhân...
Xem khóa học
Tham gia 1 kiểu khác để thi hành lệnh SQL. Kiểu này theo tôi là dễ hiểu hơn chút