- 帖子
- 262
- 主題
- 8
- 精華
- 0
- 積分
- 280
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- Office 2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- HK
- 註冊時間
- 2015-8-11
- 最後登錄
- 2025-3-24

|
5#
發表於 2017-9-20 11:55
| 只看該作者
try this:- Sub zz()
- Dim ar, b(), d As Object, f, k, t
- Set d = CreateObject("scripting.dictionary")
- ar = Sheets(1).[b1048576].End(3).CurrentRegion.Value
- For i = 1 To UBound(ar)
- d(ar(i, 1)) = ""
- Next
- f = Application.GetOpenFilename
- If f = "Fasle" Or f = "" Then Exit Sub
- Application.ScreenUpdating = 0
- Workbooks.Open Filename:=f, Password:="122333"
- ar = Sheets(1).[b1048576].End(3).CurrentRegion.Value
- ReDim b(UBound(ar, 2) - 1)
- ActiveWorkbook.Close 0
- For i = 1 To UBound(ar)
- If d.exists(ar(i, 1)) Then
- For j = 1 To UBound(ar, 2)
- b(j - 1) = ar(i, j)
- Next
- d(ar(i, 1)) = b
- End If
- Next
- t = d.items
- Sheets(1).[b1].End(4).Select
- Sheets(1).[b1].End(4).Resize(d.Count, UBound(ar, 2)) = Application.Transpose(Application.Transpose(t))
- Application.ScreenUpdating = 1
- End Sub
複製代碼 |
|