返回列表 上一主題 發帖

[發問] 如何讀取另一個xls裡的sheets資料到array裡以便處理

回復 1# kasl

我貼之前來這發問的範例,您再改改看

不同檔案間的複製
Sub ex()
Dim Ar(), fd$, fs$, s%
fd = "D:\10月\" '更改成你的10月資料夾目錄    *****這邊你就改你想開的檔案的資料夾目錄
fs = Dir(fd & "*.xls")
Do Until fs = ""
With Workbooks.Open(fd & fs)
   With .Sheets("模製")
   ReDim Preserve Ar(s)
      Ar(s) = Array(.[AP7].Value, .[AP10].Value, .[AP12].Value, .[G7].Value, .[G12].Value)
      s = s + 1
   End With
   .Close 0
End With
fs = Dir
Loop
[A2].Resize(s, 5).Value = Application.Transpose(Application.Transpose(Ar))
End Sub


我想重點在
With Workbooks.Open(fd & fs)   
fd是設資料夾目錄   (例如  C:\test\abc  --->C槽裡,test資料夾裡,abc資料夾)
fs是設檔名+.xls  (例如  001.xls)  
那fd&fs就會是C:\test\abc\001.xls
然後With Workbooks.Open(fd & fs)就變成With Workbooks.Open(C:\test\abc\001.xls)
就會去開001.xls檔了

With .Sheets("模製")的功能是讓你使用該工作表
所以你可以改寫成With .Sheets(" ")     兩個"中間放入你的工作表的名字

然後再去讀資料,複製到現用的檔案裡面的某一個工作表(sheet)中的陣列
這邊我就不太會了,不好意思,我也是新手

希望對你有一點幫助
哈囉~大家好呀

TOP

        靜思自在 : 原諒別人就是善待自己。
返回列表 上一主題