0
我試圖從多個工作表中將多個工作表中的數據解析到單個摘要工作表或工作簿中。到目前爲止,我已經能夠從指定單元收集數據,但是我想包括一系列單元格(例如「A2:B20」)。我如何在循環過程中指定這個?如何指定一個單元格範圍
Option Explicit
Sub GetMyData()
Dim myDir As String, fn As String, sn As String, sn2 As String, n As Long, NR As Long
'***** Change Folder Path *****
myDir = "C:\attach"
'***** Change Sheetname(s) *****
sn = "Title"
sn2 = "Monday"
fn = Dir(myDir & "\*.xlsx")
Do While fn <> ""
If fn <> ThisWorkbook.Name Then
With ThisWorkbook.Sheets("Sheet10")
NR = .Cells(Rows.count, 1).End(xlUp).Row + 1
'Pick cells from worksheet "Title"
With .Range("A" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!B4"
.Value = .Value
End With
With .Range("B" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!B5"
.Value = .Value
End With
With .Range("C" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!B6"
.Value = .Value
End With
With .Range("D" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!B7"
.Value = .Value
End With
With .Range("E" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!A1"
.Value = .Value
End With
With .Range("F" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn & "'!A2"
.Value = .Value
End With
'pick cells from worksheet "Monday"
With .Range("G" & NR)
.Formula = "='" & myDir & "\[" & fn & "]" & sn2 & Range("A1:C57")
End With
End With
End If
fn = Dir
Loop
ThisWorkbook.Sheets("Sheet10").Columns.AutoFit
End Sub
這兩個選項都不起作用。我得到類型不匹配的運行時錯誤13. – wisenhiemer
我不同意。鍵入'Range(「A1:B4」)。Formula =「= 1 + 5」'到立即窗口中。你會發現該範圍內的所有單元格都分配了公式。對於'Range(「A1」,「B4」)是相同的。Formula =「= 1 + 5」'如果挑出正確的字符串難以輸入,可能需要按照不同的方法來引用所需的單元格。 – CodeJockey