返回列表 上一主題 發帖

開啟固定資料夾裡的csv(不斷新增)

開啟固定資料夾裡的csv(不斷新增)

c:\下載資料夾   裡面有以下這樣的檔案   每日九點會傳過來
From(測試測試 系統發送 ([email protected]))_ID(1581)_I55447_1212090002.CSV
From(測試測試 系統發送 ([email protected]))_ID(1587)_I55447_1213090016.CSV

紅色部份我不確定他的規律 所以 希望可以用   *  來替代
藍色部份是 日期  所以我使用
Dim a As String
a = Format(Date , "mmdd")
Workbooks.Open Filename:="C:\下載資料夾\From(測試測試 系統發送 ([email protected]))_ID(" & "*" & ")_I55447_" & a & "*" & ".CSV"

顯示找不到或名子錯誤 希望大大們解答   !!
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

回復 2# stillfish00


    可以改成這樣是嗎??
From(測試測試 系統發送 ([email protected]))_ID(????)_I55447_1213??????.CSV
大大可提供DIR教學嗎??? 我知道是偵測是否開啟檔案用的DIR  
但不知怎樣可以向你說的取得正確名稱@@" 感謝大大回復~
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 5# stillfish00
回復 4# Hsieh
感謝兩位大大協助~~已成功!
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 4# Hsieh


再麻煩大大!我的檔案都9點固定新增    但是我希望我中間可以不段的執行   所以 如果過了12點 就會變成找不到資料
可以做成如果今天的找不道  就倒退一天嗎      假設今天 1217     過了12點 他會變成找1218的 但是 找不道就往回找1217的!
該如何改呢??   還是乾脆就用略過錯誤等到9點就會會正常執行了 =="  !
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 4# Hsieh


    大大  剛自己試一下 已解決了.......^^
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 4# Hsieh


    大大 ,此程式用了一段時間 也遇到了些問題 ,雖然不段的再進修與練習寫新程式  
   但還是想不出頭緒, 因為此檔傳送來只有日期沒有年份  所以 我現在抓的資料 有時候都會抓到去年的0416的檔案 ....(但有時又會是2013正確的)不知道抓取的定義是否為隨機的
但是此附件的  ID  會一直向上增加  有辦法用DIR抓取 ID較大的檔案嗎??   或者是比較最後儲存日期來抓取最新的資料!(最好是兩種方式都教我^^)哈哈
目前程式為:
  1. fs = Dir("C:\下載資料\From(測試測試 系統發送 ([email protected]))_ID(" & "*" & ")_I55447_" & Format(Date, "mmdd") & "*" & ".CSV")
  2. If fs <> "" Then
  3. Workbooks.Open "C:\下載資料\" & fs
  4. Else:
  5. fs = Dir("C:\統一信件\From(測試測試 系統發送 ([email protected]))_ID(" & "*" & ")_I55447_" & Format(Date - 1, "mmdd") & "*" & ".CSV")
  6.         If fs <> "" Then
  7.         Workbooks.Open "C:\下載資料\" & fs
  8.         Else: GoTo 離開
  9.         End If
  10. End If
複製代碼
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 10# GBKEE


    大大 你有遠端嗎?? 可否幫我看一下??
目前 顯示沒有定義 f  

我把f 定為 string 因為是fs = dir(f) '個人想法應該是把偵測到的名稱紀錄為 fs
但下面這句就不太了解   而且顯示錯誤
If Year(Fc.GetFile(a & f).DateLastAccessed) = Year(Date) Then  '顯示找不到檔案

而且我建立按鈕  按了都沒反應   用F8 or F5 執行才會跑程式(怪事)
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 10# GBKEE


    程式可行了 但是 ....他一次開兩個檔案  =="  所以沒有做篩選欸  把找到的都打開了
我去年04/18的檔案的最後修正日期為2013-03-21    今年04/18的是今天   會不會是用年份區分的關西??
可是你註解是寫說開啟最後的資料阿......~"~ G大拍謝捏  又要再麻煩您了@@"
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 13# GBKEE


    ※今年04/18的是今天 所以檔案須是今年04/18所建立或修改存檔的※

是阿= ="  我在解說一次喔

2013/04/18 寄來的檔案   存取時間是2013/04/18 09:00   (應該單開此檔)
2012/04/18 的檔案    存取時間是 2013/03/21 06:29
卻會開啟兩個檔案
那問題是出在哪???
我試著把  a 改為 a= Format(Date - 1, "mmdd")
但是還是開兩個檔案  2013/04/17跟2012/04/17的檔案= =所以 好像開啟最後存取的語法沒反應
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

回復 15# GBKEE

Msgbox DateValue(Fc.GetFile("C:\下載資料\" & f).DateLastAccessed)

    此代碼要貼在 f = Dir(f)以下  迴圈以上
得到結果為2013/04/18   為正確的
我在想 應該是迴圈之後把舊的也開啟了
所以我在
             Workbooks.Open "C:\下載資料\" & f         後面讓他跳脫迴圈就OK了     ~>>>  : GoTo 離開

是這樣的關西嗎??   
DO While
不適執行一次是正確的就離開了  怎麼又會持續迴圈  還是我記錯了= ="!!

反正目前看起來應該是OK了....我在多測試看看  @@
自用車也可以簽帳喔!
五千元加油金加入油箱後還回饋您6200元
福利旺車友會power-want.com

TOP

        靜思自在 : 不要小看自己,因為人有無限的可能。
返回列表 上一主題