用于复制/粘贴动态范围的宏

时间:2017-09-21 18:10:20

标签: dynamic macros range global

我正在尝试将两个单元格区域从一个工作表复制并粘贴到另一个工作表,在每次迭代之间更改原始两个单元格范围的列。这是错误:

运行时错误'1004': 对象'_Global'的方法'范围'失败

代码,错误部分以下面的“lat”开头:

Dim itr As Integer
Dim i As Integer
Dim year As Double
Dim LCOE As Double
Dim lat As Double
Dim longi As Double


'Select latlong
For i = 5 To 6
     Worksheets("Txmkt").Select
     lat = Range(i & 4).Value
     Sheets("Dashboard").Select
     Range("G4").Value = lat

     Sheets("Txmkt").Select
     longi = Range(i & 5).Value
     Sheets("Dashboard").Select
     Range("G5").Value = longi


    Call productionUpdate

'Select year
    For itr = 9 To 12
        Sheets("Txmkt").Select
        year = Range("D" & itr).Value
        Sheets("Dashboard").Range("D11") = year

        Call solvePPA

        LCOE = Range("D42").Value
        Sheets("TXmkt").Range(Cells(itr, i)) = LCOE

    Next itr


Next i

1 个答案:

答案 0 :(得分:0)

当我尝试运行代码时,在此行出现错误

lat = Range(i & 4).Value

这不是正确的语法。请尝试以下操作,其中i =行号,4是您的列号

lat = Cells(i, 4).Value

以这种方式编写的代码的每个其他区域都相同。