|
'满意来朵小花哈
Option Explicit
Sub test()
Dim filename(), i, wb, sht, t, arr, flag As Boolean
If Not getfilename(filename, ThisWorkbook.Path, ".xls") Then Exit Sub
For i = 1 To UBound(filename)
If InStr(filename(i), "合并help") = 0 Then
t = Split(filename(i), "\")
t = Split(t(UBound(t)), ".")(0)
Set wb = GetObject(filename(i))
arr = wb.ActiveSheet.UsedRange
wb.Close
For Each sht In Sheets
If sht.Name = t Then flag = True: Exit For
Next
If flag Then
flag = False
Else
Sheets.Add
ActiveSheet.Name = t
End If
Sheets(sht.Name).[a1].Resize(UBound(arr, 1), UBound(arr, 2)) = arr
End If
Next
End Sub
Function getfilename(filename, pth, mark) As Boolean
Dim f, n
If Right(pth, 1) <> "\" Then pth = pth & "\"
f = Dir(pth & "*.*")
Do While Len(f) > 0
If LCase(Right(f, Len(mark))) = LCase(mark) Then
n = n + 1: ReDim Preserve filename(1 To n)
filename(n) = pth & f
End If
f = Dir
Loop
If n > 0 Then getfilename = True
End Function |
评分
-
2
查看全部评分
-
|