Con xin lỗi vì đã chen ngang, ý chú con chưa hiểu lắm. Chú đang nói về mặt rủi ro của dữ liệu tổng hợp hay qui mô của 100 file kia ạ?Dùng hàm indirect để lấy dữ liệu từ hơn 100 files?
Mà cũng chưa nói đến Excel hay Indirect gì cả. Chỉ riêng việc mở 100 files lấy dữ kiệu "tự động" nghe đã ớn lạnh rồi.
Tự thuở biết đi làm là mấy chục năm rồi. Minhg mới thấy kiểu làm việc này lần đầu tiên.
Nhiều lý do lắm.Con xin lỗi vì đã chen ngang, ý chú con chưa hiểu lắm. Chú đang nói về mặt rủi ro của dữ liệu tổng hợp hay qui mô của 100 file kia ạ?
Con từng gặp dạng dữ liệu kiểu này.Nhiều lý do lắm.
Vấn đề là dữ liệu chứa kiểu gì mà cả 100 files?
Rủi ro ở đây chỉ phụ thôi vì lấy dữ liệu kiểu đó là chấp nhận rác.
ko hiểu ý bác lắm, nhưng e lượm nhặt dc code đóng mở các file trong 1 folder. Bác tự thêm code copy vào là đượcEm muốn nhờ mọi người giúp đỡ phần code để đóng mở lần lượt hết tất cả các file excel trong cùng một folder để lấy data ở cột G và sau đó paste value sang cột H. (Em dùng hàm Indirect, muốn lấy dữ liệu phải mở file, mà gần hơn 100 file nên máy em chạy không nổi).
Em cám ơn ạ.
View attachment 277120
'Check Output
Sub ListFiles()
Application.ScreenUpdating = False
Dim path As String
Dim dem As Integer
path = "C:\Users\" 'must end with path separator ( \ )
Cells.Clear
Call GetFiles(path)
End Sub
Private Sub GetFiles(ByVal path As String)
Application.ScreenUpdating = False
Dim FSO As Object, Fldr As Object, subF As Object, file As Object, extn As String
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Fldr = FSO.GetFolder(path)
For Each subF In Fldr.SubFolders
GetFiles (subF.path)
Next subF
For Each file In Fldr.Files
On Error Resume Next
If Err.Number = 0 Then
Workbooks.Open (file.path)
'-------------------------------------------------------------------------
code here
'------------------------------------------------------------------------------------
End If
On Error GoTo 0
Next file
Set FSO = Nothing
Set Fldr = Nothing
Set subF = Nothing
Set file = Nothing
End Sub
Không hiểu bạn muốn làm gì.Em muốn nhờ mọi người giúp đỡ phần code để đóng mở lần lượt hết tất cả các file excel trong cùng một folder để lấy data ở cột G và sau đó paste value sang cột H. (Em dùng hàm Indirect, muốn lấy dữ liệu phải mở file, mà gần hơn 100 file nên máy em chạy không nổi).
Em cám ơn ạ.
View attachment 277120
Bạn thử này xem có đúng mục đích của bạn không nhé ( chọn Run và quét chọn những file cần thực hiện).Em muốn nhờ mọi người giúp đỡ phần code để đóng mở lần lượt hết tất cả các file excel trong cùng một folder để lấy data ở cột G và sau đó paste value sang cột H. (Em dùng hàm Indirect, muốn lấy dữ liệu phải mở file, mà gần hơn 100 file nên máy em chạy không nổi).
Em cám ơn ạ.
View attachment 277120
Cỡ 20 files là phải có quy trình quản lý và lưu trữ "dữ liệu để dành" (archived data) rồi.Con từng gặp dạng dữ liệu kiểu này.
Ở công ty cũ, dữ liệu đo rất nhiều để báo cáo theo từng lot cho khách hàng, vì vậy công ty đầu tư máy đo, cụ thể là VMM của Mitutoyo.
Loại máy này xuất dữ liệu ra CSV có định dạng và thứ tự giống nhau.
Lấy dữ liệu từ file CSV này save thành dữ liệu thô với tên file là số lot.
Xuất hàng càng nhiều thì dữ liệu càng nhiều.
Lâu lâu ông khách hàng buồn buồn đòi dữ liệu kiểm soát SPC chẳng hạn, thì lấy hơi đuối luôn đó chú.
Dạ đúng ạ, đối sách là dùng ERP upload từng file sau khi đo xong, khi cần thì hiển thị biểu đồ trên ERP luôn. Nhưng cái đó nằm ngoài khả năng của cháu, IT đã làm nó.Cỡ 20 files là phải có quy trình quản lý và lưu trữ "dữ liệu để dành" (archived data) rồi.
Đợi đến cả trăm là vì không đủ khả năng và kiến thức quản lý. Giản dị vậy thôi.
Tổng hợp nhiều file thành 1 file thì có nhiều code và nhiều bài viết cho vấn đề này. Nhưng đối với người không chuyên VBA tôi khuyên sử dụng Power Query hoặc Power BI, tổng hợp nhiều sheet vào 1 sheet hay tổng hợp nhiều file vào 1 file.......Power Query đều làm được hết, dễ sử dụng cho những người không biết code.tôi cũng có vấn đề tương tự nhưng chỉ khoảng 50 file -70 file cần tổng hợp lại thành 1 ( 1-2 quý cần tổng hợp lại 1 lần) nên cũng hóng để không phải làm thủ công.
Cám ơn đã gợi ý cho mình ạTổng hợp nhiều file thành 1 file thì có nhiều code và nhiều bài viết cho vấn đề này. Nhưng đối với người không chuyên VBA tôi khuyên sử dụng Power Query hoặc Power BI, tổng hợp nhiều sheet vào 1 sheet hay tổng hợp nhiều file vào 1 file.......Power Query đều làm được hết, dễ sử dụng cho những người không biết code.
Nếu bạn muốn tìm hiểu về vấn đề này thì lên youtube gõ: daily excel, đây là kênh của anh Thịnh, 1 thành viên của diễn đàn GPE này lập ra, anh này khá dễ thương, làm ở ngân hàng, nhưng lâu rồi không xuất hiện ở diễn đàn này nữa.
Trước mình có từng làm 1 file kiểu này: copy tờ khai hải quan. Mình nghĩ bạn sẽ dùng được
Tức là tờ khai mở được tải xuống dưới dạng các file excel xls và có sheet name là tokhainhap2 (ở ô C1 sheet setting)
Bạn cần set các dữ liệu ở vùng màu hổng và ấn nút. Dữ liệu sẽ về sheet Data
Mình cảm ơnBạn thử này xem có đúng mục đích của bạn không nhé ( chọn Run và quét chọn những file cần thực hiện).
Mình xin pass để mở xem code dc ko?Trước mình có từng làm 1 file kiểu này: copy tờ khai hải quan. Mình nghĩ bạn sẽ dùng được
Tức là tờ khai mở được tải xuống dưới dạng các file excel xls và có sheet name là tokhainhap2 (ở ô C1 sheet setting)
Bạn cần set các dữ liệu ở vùng màu hổng và ấn nút. Dữ liệu sẽ về sheet Data
bài này hay có gì chia sẻ thành quả cho tôi học với nhé, cảm ơn!Mình xin pass để mở xem code dc ko?
Mình đã gửi cho bạn rồi nhéMình xin pass để mở xem code dc ko?
Ngay trong diễn đàn này có chuyên mục về Power query. Có cả 1 tài liệu để đọc về nó. Còn nói về mở tất cả file trong folder lấy dữ liệu thì có 1 chủ đề, và thậm chí có code sẵn.Power Query
Nếu bạn muốn tìm hiểu về vấn đề này thì lên youtube gõ: ...
Thế bạn có lường được là ngoài vấn đề của bạn thì code còn vô số sub/function làm những thứ khác không? Bạn có sẽ biết được là cái mình cần nó nằm ở đâu không? Nếu nhiều code ngoài việc bạn cần làm thì có khi bạn sẽ lạc trong một rừng code, tẩu hỏa nhập ma thôi.Mình xin pass để mở xem code dc ko?