2014-09-26 118 views
-1

我遇到了一個我無法解決的問題。這是:VBA:將不同工作簿中的某些工作表合併到一個工作簿中

我想複製某些工作簿中包含的某些工作表,並將其全部粘貼到一個新的工作簿中。

更具體地說,我有一個名爲«全宗»含有20個工作簿文件夾,每一個具有相同結構: 他們都稱爲«01082014_FONDS»,01082014更改爲每個工作簿和作爲月中的某一天。 在每個工作簿中,都有一個名爲«Portfolio»的工作表,另一個名爲«Disponibilités»。我想複製這2個工作表(還有其他人,但我只想複製那些工作表)並將其粘貼到新的工作簿中。

一結束,我有一個工作簿,被稱爲«組合1»40張,«Disponibilités1»,«組合2»,«Disponibilités2»...

任何人都可以幫我在這? 非常感謝!

+0

你有任何現有代碼? – skrrgwasme 2014-09-26 12:22:22

+0

不是真的,因爲我真的不知道如何開始這個... – 2014-09-26 12:43:37

回答

1

你需要做的VBA以下:通過文件

  1. 循環的文件夾中Loop through files in a folder using VBA?
  2. 找到,如果單詞「全宗」是在文件名:Check if a string contains another string
  3. 打開Set wb = Workbooks.open(filename)
  4. 遍歷工作簿中的工作表:你找工作簿Loop through Excel Sheets
  5. 找到,如果單詞「組合」或「Disponibil智控系統」是在工作表的名稱:Check if a string contains another string
  6. 重命名你找到工作:http://www.mrexcel.com/forum/excel-questions/72647-any-way-rename-sheet-visual-basic-applications.html
  7. 複製工作表到當前工作簿:Copy an entire worksheet to a new worksheet in Excel 2010
  8. 關閉工作簿:wb.close SaveChanges:=false
0

爲了幫助你,在這裏是第一點...

第一點:

函數S()

MyPath = "D:\FOLDER\TEST\*.xls" ' Set the path. 
MyName = Dir(MyPath) ' Retrieve the first entry. 
Do While MyName <> "" ' Start the loop. 
    Call MsgBox(MyName) 
    MyName = Dir() ' Get next entry. 
Loop 

端功能

相關問題