返回列表 上一主題 發帖

[發問] Excel抓取多筆資料

使用[陣列]做上/下行比對,
資料範圍須多加一行,
但迴圈要減一, for i=2 to ubound(arr) - 1, 不然會跳出錯誤

若使用range則無此問題!!!

TOP

異動表排序//B欄公式...可參考
=-LOOKUP(,-MID(C1&"|0",LOOKUP(99,FIND({"|","#","#M","#AL"},C1&"|")+{1,1,2,3}),ROW($1:$9)))
沒有符合的顯示0

A欄公式因版本看不到~~

TOP

本帖最後由 准提部林 於 2023-7-9 10:30 編輯

來源檔判斷是否開啟//
On Error Resume Next: Set xB = Workbooks(FN): On Error GoTo 0
If xB Is Nothing Then Set xB = Workbooks.Open(PH & "\" & FN): chk = 1
With xB.Sheets("異動表排序")
     Brr = Range(.[G1], .[A65536].End(3)(2))
End With
If chk = 1 Then xB.Close 0

解析//檔案若是事先手動開啟, 不關閉// 若是由程式開啟, 則由程式關閉
為何:
1) 檔案如已開啟, 程式就不可以再開一次, 會造成當機
2) 檔案是手動開啟的, 可能有更改內容而未存檔, 若直接關閉它, 資料將不會被儲存

TOP

        靜思自在 : 犯錯出懺悔心,才能清淨無煩惱。
返回列表 上一主題