在Excel公式中引用浮动列(VBA)

我想循环通过工作表来获取一些数据。 有了这些数据,我试图做一个计算,并直接输出到另一个工作表(我希望公式在工作表上)。

我遍历每一列(第一行),看看是否有数据。 如果有的话,计算是表演。 问题是我正在使用连接和一个variables来计数行,但这不适用于列。

代码是:

Sub OutputManager() Dim x As Long Dim lRow As Long, lColumn As Long Dim LastRow As Long, LastColumn As Long Dim ws As Worksheet 'find date limits LastRow = Worksheets("TIME").Cells(Rows.Count, "A").End(xlUp).Row LastColumn = Worksheets("TIME").Cells(1, Columns.Count).End(xlToLeft).Column 'enter an if loop to find an index For lColumn = 2 To LastColumn If Worksheets("TIME").Cells(1, lColumn) <> "" Then For lRow = 3 To LastRow Worksheets("Ret").Cells(lRow, lColumn) = "='TIME'!" & lColumn & lRow & "/'TIME'!" & lColumn & lRow - 1 & "-1" '***** problem with the lcolumn, it gives a number and not a "A" or "B" Next lRow End If Next lColumn 

任何想法如何做到这一点?

尝试这个:

 With Worksheets("TIME") For lColumn = 2 To LastColumn If .Cells(1, lColumn) <> "" Then For lRow = 3 To LastRow Worksheets("Ret").Cells(lRow, lColumn) = "='TIME'!" & .Cells(lRow, lColumn).Address & "/'TIME'!" & .Cells(lRow - 1, lColumn).Address & "-1" Next lRow End If Next lColumn End With