consolidate to one excel file from other excel files.- tổng hợp file dữ liệu từ các file survey

  • Thread starter uukackac
  • Ngày gửi
U

uukackac

Guest
5/4/09
2
0
0
46
xxxx
Mình có một bài toán là Cty cần survey các nhân viên về một việc gì đó.
Mình tạo một file excel rồi gửi mail cho mọi người, mọi người sẽ nhập dữ liệu vào file excel rồi gửi lại cho mình để tổng hợp các ý kiến.
nếu làm thủ công mở từng file excel rồi copy dữ liệu vào một file tổng hợp thì rất mất công.
Nên mình tạo sẵn một file excel, tạo một button rồi sử dụng VBA để tự động mở các file excel trong cùng folder và chép dữ liệu sang file tổng hợp.
dưới đây là đoạn code VBA, bạn nào có cách nào tốt hơn không?

Sub Button1_Click()
Dim fPATH As String, fNAME As String
Dim LR As Long, NR As Long
Dim wbGRP As Workbook, wsDEST As Worksheet
Dim sPath As String
sPath = ActiveWorkbook.Path
Set wsDEST = ThisWorkbook.Sheets("Summary")
LR = wsDEST.Range("B" & Rows.Count).End(xlUp).Row + 1
NR = 2
For i = 2 To LR
wsDEST.Rows(i).ClearContents
Next i
fPATH = sPath & "\"
fNAME = Dir(fPATH & "*.xlsx") 'get the first filename in fpath
Do While Len(fNAME) > 0 And fNAME <> "list.xlsm"
Set wbGRP = Workbooks.Open(fPATH & fNAME) 'open the file
wsDEST.Range("A" & NR).Value = Range("E5").Value
wsDEST.Range("B" & NR).Value = Range("E7").Value
wsDEST.Range("C" & NR).Value = Range("J7").Value
wsDEST.Range("D" & NR).Value = Range("M7").Value
wsDEST.Range("E" & NR).Value = Range("J5").Value
wsDEST.Range("F" & NR).Value = Range("M5").Value
wsDEST.Range("G" & NR).Value = Range("E22").Value
wsDEST.Range("H" & NR).Value = Range("E24").Value
wsDEST.Range("I" & NR).Value = Range("E26").Value
wsDEST.Range("J" & NR).Value = Range("E28").Value
wsDEST.Range("K" & NR).Value = Range("E30").Value
wsDEST.Range("L" & NR).Value = Range("E32").Value
wsDEST.Range("M" & NR).Value = Range("E36").Value
wsDEST.Range("N" & NR).Value = Range("E38").Value
wsDEST.Range("O" & NR).Value = Range("E40").Value
wsDEST.Range("P" & NR).Value = Range("E42").Value
wsDEST.Range("Q" & NR).Value = Range("E44").Value
wsDEST.Range("R" & NR).Value = Range("E46").Value
wsDEST.Range("S" & NR).Value = Range("E50").Value
wsDEST.Range("T" & NR).Value = Range("E52").Value
wsDEST.Range("U" & NR).Value = Range("E54").Value
wsDEST.Range("V" & NR).Value = Range("E56").Value
wsDEST.Range("W" & NR).Value = Range("E58").Value
wsDEST.Range("X" & NR).Value = Range("E60").Value
wsDEST.Range("Y" & NR).Value = Range("E64").Value
NR = wsDEST.Range("A" & Rows.Count).End(xlUp).Row + 1
wbGRP.Close False 'close data workbook
fNAME = Dir 'get the next filename
Loop
End Sub
 
Khóa học Quản trị dòng tiền
U

uukackac

Guest
5/4/09
2
0
0
46
xxxx
Ðề: consolidate to one excel file from other excel files.- tổng hợp file dữ liệu từ các file survey

ai có cách nào dễ hơn không ạ?
 

Xem nhiều