Excel 将计算出的字段值存储在其他字段中

Excel 将计算出的字段值存储在其他字段中,excel,vba,Excel,Vba,我希望将计算字段的值存储在另一个字段中(最好通过单击计算字段旁边的链接/按钮)。每次单击此按钮时,计算字段的值都应插入到上一次存储的插入下的字段中。 我希望这是有意义的:——) 示例 A1中是一个基于变量计算值的公式。每次更改变量时,我都希望能够通过单击按钮(如B1中的按钮)将结果保存在A1中。第一次单击按钮时,结果应保存在C1中。下次单击按钮时,新结果应保存在C2中(C1应保持不变)。第三次是在C3,等等。 值的存储至少应保持存储在工作簿的当前“会话”中(在我关闭工作簿之前) 谢谢像这样的东西

我希望将计算字段的值存储在另一个字段中(最好通过单击计算字段旁边的链接/按钮)。每次单击此按钮时,计算字段的值都应插入到上一次存储的插入下的字段中。 我希望这是有意义的:——)

示例

A1中是一个基于变量计算值的公式。每次更改变量时,我都希望能够通过单击按钮(如B1中的按钮)将结果保存在A1中。第一次单击按钮时,结果应保存在C1中。下次单击按钮时,新结果应保存在C2中(C1应保持不变)。第三次是在C3,等等。 值的存储至少应保持存储在工作簿的当前“会话”中(在我关闭工作簿之前)


谢谢

像这样的东西可以满足您的需要:

Sub Button1_Click()
    ' Get Value Cell (In first sheet cell A1)
    Dim rA1 As Range
    Set rA1 = ThisWorkbook.Sheets(1).Range("A1")

    ' Get Top Cell In History (In first sheet cell C1)
    Dim rC1 As Range
    Set rC1 = ThisWorkbook.Sheets(1).Range("C1")

    ' Is The Top Cell Empty, If Not Find First Empty Cell In Column
    If (rC1.Value <> "") Then
        ' If cell below C1 has a value then go to end of line of number
        If (rC1.Offset(1).Value <> "") Then
            Set rC1 = rC1.End(xlDown)
        End If

        ' Offset 1 cell to get empty cell
        Set rC1 = rC1.Offset(1)
    End If

    ' Set Value of first blank to value cell
    rC1.Value = rA1.Value
End Sub
子按钮1\u单击()
'获取值单元格(在第一个图纸单元格A1中)
Dim rA1 As范围
Set rA1=ThisWorkbook.Sheets(1).范围(“A1”)
'获取历史记录中的顶部单元格(在第一个图纸单元格C1中)
调光rC1 As范围
设置rC1=ThisWorkbook.Sheets(1)范围(“C1”)
'如果未找到列中的第一个空单元格,则顶部单元格是否为空
如果(rC1.Value“”),则
'如果C1下面的单元格有一个值,则转到数字行的末尾
如果(rC1.Offset(1.Value)”,则
设置rC1=rC1.End(xlDown)
如果结束
'偏移1个单元格以获取空单元格
设置rC1=rC1。偏移量(1)
如果结束
'将第一个空白单元格的值设置为值单元格
rC1.Value=rA1.Value
端接头

看起来你什么都没试过。这并不太复杂,需要一点研究,在做了一些测试之后,你应该能够毫无问题地提出它。对不起!这可能是真的。我想查一下,但我对VBA不太了解。能在这里找到帮助真是太好了。谢谢下一次,也许您应该自己做一些预研究和工作(通常,不带任何代码来这里是不受欢迎的)。在任何情况下,你都得到了JDunkerley的帮助,因此你应该通过奖励正确的答案来表达你的感激之情。为什么不按你自己的要求去做呢?你有一个相当坚实的第一步工作(他的代码)。这是顺便说一句,我的第一个问题有史以来的StackOverflow,所以很抱歉,如果我还不知道所有的例程。没有问题。想法很简单:这不是免费的代码交付服务;这是为那些想要成长、面临无法解决的问题或通过询问更有经验的人来寻找最佳替代方案的程序员而设计的。因此,在这里提问之前,您应该一直自己解决这个问题(也就是说,在没有其他选择时提问;不是默认情况下)。记住,你的问题/答案是为了帮助他人(最好不要把重点放在你的具体问题上,而是放在一般问题上)。最后,当你的帮助得到评价/奖励时总是很好的:)那太好了!你能添加一个小功能吗?如果下面没有更多的空字段,如何阻止公式将值插入更多字段。例如,预先定义最大值5或任何其他数字。也许代码中有一些注释?:-)添加了一些关于它在做什么的评论。如果你想让它只走一个特定的范围,那么这将涉及调整块,发现底部的美丽!非常感谢。我将尝试寻找一些教程,以了解更多的VBA,并能够进行更正,这是我需要的。