这是我关于VBA主谋的Stack Overflow的第一篇文章。
我正在处理一个从* .csv导入数据的宏,并执行各种复杂的数学活动并发出最终的" YES"或"否"基于数据。
我的问题是无法根据仅包含最近48小时数据的列创建线性估算。 目前我正在使用硬编码输入来确认数学检查与其他来源的说法。
=LINEST(Workspace!AL223:AL250,Workspace!AK223:AK250)
我遇到的问题是每次导入新数据时,此功能只需要在我有数据的列上运行。 列本身在时间参考数据之前保留空白单元格。
我需要帮助的是VBA中的一个方法,只有一个单元格引用数据存在的范围。
所以我的最终输出就是说... ...
Range("C100").value = "=LINEST(Workspace!$A$TopRow:$A$LastRow,Workspace!$B$TopRow:$B$LastRow)"
编辑:
就配置一些SpecialCells而言,我对VBA不是很熟悉,但我相信很好的是有一个if语句可以查看整个列,然后只将数据传递给LINEST语句。只有空白单元格(公式返回""如果不是48小时内)和48小时内的值。
答案 0 :(得分:0)
好的,这不是一个真正的答案,但我无法在评论中发布。看看这是否是你需要的东西。你必须建立字符串,确保从引号中删除变量,否则它们将按字面解释。
Sub x()
Dim TopRow As Long, LastRow As Long
TopRow = 10
LastRow = 250
Range("C1").Formula = "=LINEST($A$" & TopRow & ":$A$" & LastRow & ",$B$" & TopRow & ":$B$" & LastRow & ")"
End Sub