Board logo

標題: [發問] 請問將不同檔案匯入分頁的程式 [打印本頁]

作者: imzues    時間: 2011-10-18 13:27     標題: 請問將不同檔案匯入分頁的程式

請教一下各位大大
我想把A檔和B檔放至某個資料夾,
我想在AB檔內寫一個巨集,會把我放在資料夾內的A檔B檔的A分頁和B分頁
複製到AB檔內
請大家幫忙
[attach]8268[/attach]
作者: oobird    時間: 2011-10-18 14:43

我想在AB檔內寫一個巨集,會把我放在資料夾內的A檔B檔的A分頁和B分頁
複製到AB檔內

A檔B檔裡面並沒有什麼A分頁和B分頁呀
傳錯資料了吧?
作者: GBKEE    時間: 2011-10-18 15:09

回復 1# imzues
是這樣嗎?
  1. Sub Ex() 'AB的巨集
  2.     Dim msPath As String
  3.     msPath = ThisWorkbook.Path & "\"
  4.     With Workbooks.Open(msPath & "A.XLS")
  5.         .Sheets("A").Copy ThisWorkbook.Sheets(1)
  6.         .Close False
  7.     End With
  8.     With Workbooks.Open(msPath & "B.XLS")
  9.         .Sheets("B").Copy ThisWorkbook.Sheets(2)
  10.         .Close False
  11.     End With
  12. End Sub
複製代碼

作者: imzues    時間: 2011-10-18 16:54

回復 3# GBKEE


    請問一下像sheet("A")的部份有辦法依照當天日期直接做改變嗎
例如今天是10月18日
就會直接複雜1018的sheet,可以嗎??
作者: GBKEE    時間: 2011-10-18 17:15

回復 4# imzues
  1. Sub Ex() 'AB的巨集
  2.     Dim msPath As String
  3.     msPath = ThisWorkbook.Path & "\"
  4.     With Workbooks.Open(msPath & "A.XLS")
  5.         .Sheets("A").Copy ThisWorkbook.Sheets(1)
  6.         ActiveSheet.Name = Format(Date, "MMDD")
  7.         .Close False
  8.     End With
  9. End Sub
複製代碼

作者: imzues    時間: 2011-10-19 08:40

回復 5# GBKEE


    請問需要將
.Sheets("A").Copy ThisWorkbook.Sheets(1)改成
  .Sheets("mmdd").Copy ThisWorkbook.Sheets(1)
我試不太出來!!
作者: imzues    時間: 2011-10-19 09:05

本帖最後由 GBKEE 於 2011-10-19 12:50 編輯

回復 6# imzues

   我又重新上傳了一份檔案
    若是A檔的sheet是由日期命名的,
   那我用AB檔拉檔時,可以每天都會自己拉到當天的sheet的嗎??[attach]8276[/attach]
作者: GBKEE    時間: 2011-10-19 12:48

本帖最後由 GBKEE 於 2011-10-19 12:50 編輯

回復 7# imzues
  1. Sub Ex() 'AB的巨集
  2.     Dim msPath As String
  3.     msPath = ThisWorkbook.Path & "\"
  4.     With Workbooks.Open(msPath & "A.XLS")
  5.         .Sheets(Format(Date, "MMDD")).Copy ThisWorkbook.Sheets(1)
  6.         .Close False
  7.     End With
  8. End Sub
複製代碼

作者: imzues    時間: 2011-10-19 13:21

回復 8# GBKEE


    太感謝了~
    想再請教一個問題若是抓取的檔名也有日期格式
      例如檔名是DailyIdleLot-2011-10-19-0800
   若一樣想要可以隨日期不同而抓不同日期的檔該怎麼改??
作者: GBKEE    時間: 2011-10-19 14:22

回復 9# imzues
是這樣嗎?
  1. Sub Ex() 'AB的巨集
  2.     Dim msFile As String
  3.     ChDir ThisWorkbook.Path & "\"
  4.                  'DailyIdleLot -2011 - 10 - 19 - 800
  5.     msFile = Dir("DailyIdleLot -" & Format("yyyy - mm - dd - ") & "*")
  6.     If msFile <> "" Then
  7.         With Workbooks.Open(msFile)
  8.         .Sheets(Format(Date, "MMDD")).Copy ThisWorkbook.Sheets(1)
  9.         .Close False
  10.         End With
  11.     End If
  12. End Sub
複製代碼

作者: imzues    時間: 2011-10-20 13:15

回復 10# GBKEE


   不好意思
     我不太會改,可以幫我看看嗎?[attach]8284[/attach]
作者: GBKEE    時間: 2011-10-20 15:42

回復 11# imzues
不好意思: 10樓的程式碼中少給了Date
Sub Idelot()
    Dim msFile As String
    ChDir ThisWorkbook.Path & "\"
    msFile = Dir("DailyIdleLot-" & Format(Date, "yyyy-mm-dd-") & "*")
    If msFile <> "" Then
        With Workbooks.Open(msFile)
        .Sheets("Idle Lot 清單").Copy ThisWorkbook.Sheets(1)
        .Sheets("Idle Lot 明細").Copy ThisWorkbook.Sheets(2)
        .Close False
        End With
    End If
End Sub
作者: imzues    時間: 2011-10-20 15:58

回復 12# GBKEE


    OK了~~太感謝你了
     解決了我的問題!!!
作者: joeron    時間: 2011-12-30 08:00

這篇讓我受益良多,又學了不少技巧了




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)