返回列表 上一主題 發帖

[發問] 請問1些搬移的問題

[發問] 請問1些搬移的問題

本帖最後由 mark15jill 於 2011-5-18 09:30 編輯

因資料太多 如果一筆一筆慢慢搬移 會手廢掉= =!!
故做了一個比對表 和一個按鈕 想請問說 能否弄個VBA 將想要的資料 搬移到想要的資料夾名稱...

需求簡易說明
1.壓縮檔內有  需求說明文件  比對表  EXCEL存放區 和 資料夾存放區 兩個資料夾
    而在 EXCEL存放區內 有13份EXCEL檔案   資料夾存放區內 有 13個資料夾

2.想請問說 能否在比對表內 的 搬移 按鈕按下時候
    依照 比對表內的 TEXTbox 內容 將 EXCEL存放區內的檔案 放置該目錄下的 資料夾名稱
    如  TEXTBOX內容為 (D:\90年度\) 按下搬移後  EXCEL檔案 (90年度-001 ) 會搬移到 D:\90年度\90年度-001-王1 的資料夾內


檔案附帶於此   (479K才是正確的ˇˇ  另外一個是誤傳)
[attach]6158[/attach]

能.rar (479.29 KB)

回復 1# mark15jill


    +.+  是我表達不夠清楚嗎

TOP

回復 2# mark15jill
Name陳述句重新命名檔案並將之移到一個不同的目錄或資料夾中。如有必要,Name可跨越磁碟機移動檔案。但當newpathname和oldpathnamebut都在相同的磁碟機中時,只能重新命名已經存在的目錄或資料夾。Name不能建立新檔案,目錄或資料夾。
使用 Name 指令在一個已開啟的檔案上,將會產生錯誤,想要改變一個已開啟檔案的名稱之前,你必須先關閉它,Name 引數不能包括萬用字元 ( * 和 ? )。
  1. Sub Ex()
  2.     Dim TheFile$, A$, F$
  3.     For Each e In Range("G2", [G2].End(xlDown))
  4.         TheFile = ThisWorkbook.Path & "\" & "excel存放區\" & e & ".xls"
  5.         A = Dir(TheFile)
  6.         If A <> "" Then
  7.             F = ThisWorkbook.Path & "\" & "資料夾存放區\" & e(1, 2)
  8.             Name TheFile As F & "\" & A
  9.         End If
  10.     Next
  11. End Sub
複製代碼

TOP

回復 3# GBKEE


    版大  那些程式的話 是只能限定於 同磁碟嗎??(如 C 對 C )
還是說 可以不同磁碟區???
因為如果是同磁碟區可行的話 那就不用把比對表搬移過去
如果不可行的話 那就得搬移過去了

TOP

回復 4# mark15jill
因為如果是同磁碟區可行的話 那就不用把比對表搬移過去,如果不可行的話 那就得搬移過去了
看不懂你的意思
Name   "D:\TEST.XLS"  As   "C:\TEST1.XLS"   
是可行的

TOP

回復 5# GBKEE


    就是那個意思....  謝謝板大
因為常常為了要搬移上千個檔案  而導致眼花撩亂= =!! 手極度痠痛

TOP

本帖最後由 mark15jill 於 2011-5-18 10:41 編輯

回復 5# GBKEE


  大大 不好意思 有點小問題ˇˇ!!!
如果碰到非連續的資料
如 (號碼1 3 4 7 8 9 10 11 15 19 20 ) 類似這樣


就會沒有動靜

TOP

回復 7# mark15jill
  1. Sub Ex()
  2.     Dim E As Range, TheFile$, A$, F$
  3.     For Each E In Range("G2", Cells(Rows.Count, "G").End(xlUp))
  4.         If E <> "" Then
  5.             TheFile = ThisWorkbook.Path & "\" & "excel存放區\" & E & ".xls"
  6.             A = Dir(TheFile)
  7.             If A <> "" Then
  8.                 F = ThisWorkbook.Path & "\" & "資料夾存放區\" & E(1, 2)
  9.                 Name TheFile As F & "\" & A
  10.             End If
  11.         End If
  12.     Next
  13. End Sub
複製代碼

TOP

本帖最後由 mark15jill 於 2011-5-18 11:55 編輯

回復 8# GBKEE
目前 我的方式 是

123
-比對表
-excel存放區(G攔的資料) <有187筆>
        89年度-002
      89年度-004
      89年度-027
-資料夾存放區(H欄位資料) <有187筆>
      89年度-002-王1
     89年度-004-王4
     89年度-027-王27

但是  跑到這行的時候 會出現 以下圖片訊息
    Name TheFile As F & "\" & A



錯誤訊息.jpg

TOP

回復 9# mark15jill
請查看 vba的說明  錯誤的檔案名稱或數目 (錯誤 52)
檢查 看看你有犯到那裡的錯誤

TOP

        靜思自在 : 有願放在心裡,沒有身體力行,正如耕田不播種,皆是空過因緣。
返回列表 上一主題