我想從一個工作簿中獲取一個小的數據矩陣,並使用單元格引用的偏移量將其粘貼到ThisWorkbook中。雖然我正在循環查找值的範圍,但單元格引用更改。我設置的名爲'WhereCell'的變量保存當前保存的值的地址,並且我想偏離WhereCell中的任何值。它工作,如果我硬編碼單元格引用,如範圍(「A1」),但代碼,因爲它是我得到一個1004:對象'_Global'的方法'範圍'失敗。VBA試圖使用range.offset與一個命名變量中的單元格地址
我該如何改變它以抵消'WhereCell'?
Sub GetFlows()
Dim rng As Range
Dim row As Range
Dim cell As Range
Dim dem1 As String
Dim WhereCell As Range
Dim valueRng As Range
Dim x As Long
Dim y As Long
Set rng = Range("A9:A200")
For x = 1 To rng.Rows.Count
dem1 = rng.Cells(x).Value
If dem1 <> "" Then
Set WhereCell = ThisWorkbook.ActiveSheet.Range("A9:A200").Find(dem1, lookat:=xlPart)
Windows("GetFilenames v2.xlsm").Activate
Worksheets(dem1).Range("A1").CurrentRegion.Copy
ThisWorkbook.ActiveSheet.Range(Range(WhereCell), Range(WhereCell).Offset(, 2)).PasteSpecial Paste:=xlPasteValues
'MsgBox dem1
'If Not WhereCell Is Nothing Then
'MsgBox WhereCell.Address
'End If
Else
ThisWorkbook.Activate
End If
Next x
End Sub
Wherecell是一個範圍已經不包含它在'Range()'看到我的答案在這裏更多的解釋:https://stackoverflow.com/questions/46302871/relationship-between-cell-and-range -in-vba-with-activecell/46303014#46303014 –