1
我不知道是否有人也許能幫助我請。合併多個Excel張入彙總表
我使用下面的代碼,以允許用戶從多個Excel工作簿數據拷貝和合併成一個彙總表。
Sub Merge()
Dim DestWB As Workbook, WB As Workbook, WS As Worksheet, SourceSheet As String
Set DestWB = ActiveWorkbook
SourceSheet = "Input"
startrow = 7
FileNames = Application.GetOpenFilename(_
filefilter:="Excel Files (*.xls*),*.xls*", _
Title:="Select the workbooks to merge.", MultiSelect:=True)
If IsArray(FileNames) = False Then
If FileNames = False Then
Exit Sub
End If
End If
For n = LBound(FileNames) To UBound(FileNames)
Set WB = Workbooks.Open(Filename:=FileNames(n), ReadOnly:=True)
For Each WS In WB.Worksheets
If WS.Name = SourceSheet Then
With WS
If .UsedRange.Cells.Count > 1 Then
dr = DestWB.Worksheets("Input").Range("C" & Rows.Count).End(xlUp).Row + 1
lastrow = .Range("C" & Rows.Count).End(xlUp).Row
For j = lastrow To startrow Step -1
If Range("E" & j) <> "Requirements Manager" And Range("E" & j) <> "R & D Lead" And Range("E" & j) <> "Technical" And Range("E" & j) <> "Analyst" Then Rows(j).Delete
Next
lastrow = .Range("C" & Rows.Count).End(xlUp).Row
If lastrow >= startrow Then
.Range("A" & startrow & ":AQ" & lastrow).Copy
DestWB.Worksheets("Input").Cells(dr, "A").PasteSpecial xlValues
End If
End If
End With
Exit For
End If
Next WS
WB.Close savechanges:=False
Next n
End Sub
代碼工作正常,但我堅持與相關的信息,這是這行代碼複製一個問題:
.Range("A" & startrow & ":AQ" & lastrow).Copy
我需要改變這種做法,它需要考慮到兩個範圍。這些都是列「B:AD」和「自動對焦:AQ」,但我不知道如何做到這一點。
我只是想知道wehether有人也可能採取看看這個,請,並提供如何,我可以去解決這一些指導。
許多的感謝和親切的問候
嗨@K_B,非常感謝你百忙之中抽出時間來回答我的職位,我去了第二個選項,它完美的作品所有最好的,善良的!問候 – IRHM