- 帖子
- 438
- 主題
- 67
- 精華
- 0
- 積分
- 531
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- office 2010
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2012-10-30
- 最後登錄
- 2024-11-19
|
40#
發表於 2012-12-7 17:35
| 只看該作者
回復 39# GBKEE
Option Explicit
Sub Ex() '程序名稱不要用 copy 這是vba方法的關鍵字
Dim Rng(1 To 2) As Range
With Workbooks("payment.XLSM").Sheets("2012")
.Range("A1").CurrentRegion.Offset(1) = ""
Set Rng(1) = .[E2] 'E欄資料有連續
'MsgBox Rng(1).Cells(1, -3).Address '回到A欄
With Workbooks.Open("C:\Users\patrick.HKG\Desktop\Connie.XLSX").Sheets("SHEET1")
Set Rng(2) = .[A2:L2]
Set Rng(2) = Rng(2).Resize(.[E1].End(xlDown).Row - 1)
Rng(2).copy Rng(1).Cells(1, -3) 'A欄
.Parent.Close False
End With
Set Rng(1) = Rng(1).End(xlDown).Offset(1)
With Workbooks.Open("C:\Users\patrick.HKG\Desktop\Lily.XLSX").Sheets("SHEET1")
Set Rng(2) = .[A2:L2]
' **** Set Rng(2) = .Range(Rng(2), .[a2].End(xlDown)) ***** 這行不要用
Set Rng(2) = Rng(2).Resize(.[E1].End(xlDown).Row - 1)
Rng(2).copy Rng(1).Cells(1, -3)
.Parent.Close False
End With
Set Rng(1) = Rng(1).End(xlDown).Offset(1)
With Workbooks.Open("C:\Users\patrick.HKG\Desktop\Jane.XLSX").Sheets("SHEET1")
Set Rng(2) = .[A2:L2]
' **** Set Rng(2) = .Range(Rng(2), .[a2].End(xlDown)) ***** 這行不要用
Set Rng(2) = Rng(2).Resize(.[E1].End(xlDown).Row - 1)
Rng(2).copy Rng(1).Cells(1, -3)
.Parent.Close False
End With
Set Rng(1) = Rng(1).End(xlDown).Offset(1)
With Workbooks.Open("C:\Users\patrick.HKG\Desktop\Jenny.XLSX").Sheets("SHEET1")
Set Rng(2) = .[A2:L2]
' **** Set Rng(2) = .Range(Rng(2), .[a2].End(xlDown)) ***** 這行不要用
Set Rng(2) = Rng(2).Resize(.[E1].End(xlDown).Row - 1)
Rng(2).copy Rng(1).Cells(1, -3)
.Parent.Close False
End With
Set Rng(1) = Rng(1).End(xlDown).Offset(1) '程式run 到這裡出現問題 application-defined or object-defined error
With Workbooks.Open("C:\Users\patrick.HKG\Desktop\Patrick.XLSX").Sheets("SHEET1")
Set Rng(2) = .[A2:L2]
' **** Set Rng(2) = .Range(Rng(2), .[a2].End(xlDown)) ***** 這行不要用
Set Rng(2) = Rng(2).Resize(.[E1].End(xlDown).Row - 1)
Rng(2).copy Rng(1).Cells(1, -3)
.Parent.Close False
End With
End With
End Sub
最後一個出現問題
Set Rng(1) = Rng(1).End(xlDown).Offset(1) '程式run 到這裡出現問題 application-defined or object-defined error
另外中間有一列空格,之後的資料就無法出來。但第一次的程式,在copy 第一個excel 就算中間有一列空格,它也可以往下copy? |
|