Board logo

標題: [發問] 自動開啟同資料夾的各檔案填入資料值 [打印本頁]

作者: papaya    時間: 2020-7-21 02:07     標題: 自動開啟同資料夾的各檔案填入資料值

測試檔︰[attach]32307[/attach]

請修正下列的程式碼,以利能正確執行。謝謝!
    Sub Ex()
        Dim Path As String, A As String
        Path = ThisWorkbook.Path
        A = Dir(Path & "\*.xls")
        Do While A <> ""
             With Workbooks.Open(Path & "\" & A)
Application.ScreenUpdating = False
                    
'填入AQ1:BJ21的值
   [AQ1].FormulaArray = "=IF(COLUMN(A1)>39-COUNT($B1:$AN1),"""",SMALL(IF(ISNA(MATCH(ROW($1:$39),$B1:$AN1,0)),ROW($1:$39)),COLUMN(A1)))"
   [AQ1].Copy [AR1:BJ1]
   [AQ1:BJ1].Copy [AQ2:BJ21]
   [AQ1:BJ21] = [AQ1:BJ21].Value  '轉值
                    
                 
                 .Close True
             End With
            A = Dir
        Loop
    End Sub
作者: jcchiang    時間: 2020-7-21 08:31

回復 1# papaya

A = Dir(Path & "\*.xls")
改成
A = Dir(Path & "\遺漏大數據-今彩539*.xls")
作者: papaya    時間: 2020-7-21 09:01

本帖最後由 papaya 於 2020-7-21 09:05 編輯

回復 2# jcchiang
OK了!
感謝解答

再請問:
因為"OO大數據"共有10個種類,且"今彩539"之外又還有"大樂透49","威力彩38"~這樣就必須再另外設立好幾拾個主檔,所以~
不知能否改為可適用於同資料夾內的各xls檔案 ?
謝謝您 !
作者: jcchiang    時間: 2020-7-21 09:52

回復 3# papaya

不要將程式與要修改的檔案放在同一個資料夾
A = Dir(Path & "\檔案資料夾名\*.xls")
        Do While A <> ""
             With Workbooks.Open(Path & "\檔案資料夾名\" & A)
作者: papaya    時間: 2020-7-21 17:59

回復 4# jcchiang
完成了~感謝您的耐心解答




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