- 帖子
- 214
- 主題
- 74
- 精華
- 0
- 積分
- 296
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- office2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- hk
- 註冊時間
- 2013-6-17
- 最後登錄
- 2018-11-3
|
3#
發表於 2015-8-12 17:34
| 只看該作者
回復 2# mark15jill
可能我陳述不清楚,我的要求是"不開啟excel文件,如何知道某文件里有某sheet存在",所以你的做法不能用,我自己寫了個function,已經用上,不太影響程序執行速度.
''''測試文件fl(fl是文件的路徑)里有沒有sheets("Test A"),而該sheet的[A1]="ABC"
Function Benew(fl$) As Boolean
Dim Fname$, Fpath$, temp$, temp2
Fname = Right(fl, Len(fl) - InStrRev(fl, "\"))
Fpath = Replace(fl, Fname, "")
On Error Resume Next
temp = "'" & Fpath & "[" & Fname & "]Test A'!R1C1"
temp2 = Application.ExecuteExcel4Macro(temp)
Benew = IIf(temp2 = "ABC", True, False)
End Function
我要從55000個文件提取資料.因為這些文件有2種不同格式,其中1種格式是文件里有張sheet,名為"Test A",而且Test A頁的[a1]="ABC"
我現在利用上面function,即時可以區分這55000文件,哪些是第一種格式,哪些是第二種格式,然後用不同的方法取資料.並不十分影響速度.
因為固定格式的資料里必定有某固定位置的值是固定的,上面取的[a1]="ABC"就是固定位的意思示意. |
|