- 帖子
- 192
- 主題
- 15
- 精華
- 0
- 積分
- 194
- 點名
- 0
- 作業系統
- windows
- 軟體版本
- office2010
- 閱讀權限
- 20
- 性別
- 女
- 註冊時間
- 2016-9-22
- 最後登錄
- 2020-8-28
 
|
請問以下這組程式碼
為何我修改之後一直寫在同一行,不會往下一行寫入了
使用方法是: 開啟"匯出"Excel -> 裡面點選按鈕"匯出"
就會執行裡面的VBA了
VBA會去找叫Rawdata的資料夾->裡面的EXCEL分別打開->取裡面我要的欄位資料 ->一直到最後一個EXCEL- Sub TT()
- Dim Mypa$, workName$, brr(1), rr, br
- Const sWm As String = "\Rawdata\"
- t = Timer
- Mypa = ThisWorkbook.Path & sWm
- workName = Dir(Mypa & "*.xls")
- Sheet1.UsedRange.Offset(1).ClearContents
- Application.ScreenUpdating = False
- Do Until workName = ""
- With GetObject(Mypa & workName)
- n = n + 1
- With .Sheets("Data")
- brr(0) = .Range("a8").Resize(1, 21)
- brr(1) = .Range("b19").Resize(1, 20)
- End With
- .Close False
- End With
- rr = brr(0): br = brr(1)
- With Sheet1
- i = .Cells(Rows.Count, 1).End(3).Row + 1
- .Range("c" & i).Resize(1, 21) = rr
- .Range("x" & i).Resize(1, 20) = br
- End With
- Erase brr()
- workName = Dir
- Loop
- Application.ScreenUpdating = True
- MsgBox "共花" & Format(Timer - t, "0.000") & "秒" _
- & Chr(10) & "找到 " & n & "筆資料", vbOKCancel + vbInformation
- End Sub
複製代碼 應該要這樣呈現
而不是一直在同一行呈現...(當然最後只有最後找到的一筆的結果)
我寫入的地方在這裡- With Sheet1
- i = .Cells(Rows.Count, 1).End(3).Row + 1
- .Range("c" & i).Resize(1, 21) = rr
- .Range("x" & i).Resize(1, 20) = br
- End With
複製代碼
TEST.rar (155.66 KB)
|
|