我一直在研究工作站的宏,现在我被困了。基本上有一个相当长的简单过程要做,我想自动化以节省时间和提高准确性。
问题在于我试图以特定的时间间隔为每次更改的数据范围获取数据点。我可以使公式适用于单个数据集,但不能用于或多或少的数据集范围。
我使用的公式是:
=(((INDEX(LINEST(C2:C4827,B2:B4827 ^ {1,2,3}),1))* K2 ^ 3)+(((INDEX(LINEST(C2:C4827,B2: B4827 ^ {1,2,3}),1,2)))* K2 ^ 2)+((INDEX(LINEST(C2:C4827,B2:B4827 ^ {1,2,3}),1,3) )* K2)+(指数(LINEST(C2:C4827,B2:B4827 ^ {1,2,3}),1,4)))
我需要C2:C4827,B2:B4827是动态的,以便从B2和C2中找到数据,无论它走多远。
很抱歉,如果它令人困惑。我已经被困了几天了。
答案 0 :(得分:0)
我需要C2:C4827,B2:B4827动态地从B2中查找数据 无论如何它都会消失。
您可以创建一个动态字符串,它是您想要的数据范围。然后将其传递给INDIRECT
公式。然后假设"无论多远,它都会出现"等于您可以使用的相应列的COUNTA(...)
:
=INDIRECT("C2:C"&COUNTA(C:C))
=INDIRECT("B2:B"&COUNTA(B:B))
如果C1
中有没有数据且B1
只是从计数中减去一个。
所以对于你的公式,它看起来像:
=(((INDEX(LINEST(INDIRECT("C2:C"&COUNTA(C:C)),INDIRECT("B2:B"&COUNTA(B:B))^{1,2,3}),1))*K2^3) + (((INDEX(LINEST(INDIRECT("C2:C"&COUNTA(C:C)),INDIRECT("B2:B"&COUNTA(B:B))^{1,2,3}),1,2)))*K2^2) + ((INDEX(LINEST(INDIRECT("C2:C"&COUNTA(C:C)),INDIRECT("B2:B"&COUNTA(B:B))^{1,2,3}),1,3))*K2) +(INDEX(LINEST(INDIRECT("C2:C"&COUNTA(C:C)),INDIRECT("B2:B"&COUNTA(B:B))^{1,2,3}),1,4)))