是否有更好的方法在Excel中每次迭代的后续单元格中存储数据?
我正在做一个有趣的石头、布、剪刀项目,并试图找到一种方法,在不覆盖之前事件的情况下,将每个游戏的结果存储在后续单元格中。目前,我创建了一个查找函数,它返回一个“win”/“lose”/“tie”单元格和3列win/lose/tie。当事件发生时,它引用返回的单元格并根据事件是否发生将事件存储为1或0。我有一个总计数来跟踪(n)个事件/总计数。 我已经创建了另一个列作为我的唯一键,它的数字列表从降序到500,即总共500个事件 石头、布、剪刀最终结果: 解决方法:是否有更好的方法在Excel中每次迭代的后续单元格中存储数据?,excel,database,automation,iteration,Excel,Database,Automation,Iteration,我正在做一个有趣的石头、布、剪刀项目,并试图找到一种方法,在不覆盖之前事件的情况下,将每个游戏的结果存储在后续单元格中。目前,我创建了一个查找函数,它返回一个“win”/“lose”/“tie”单元格和3列win/lose/tie。当事件发生时,它引用返回的单元格并根据事件是否发生将事件存储为1或0。我有一个总计数来跟踪(n)个事件/总计数。 我已经创建了另一个列作为我的唯一键,它的数字列表从降序到500,即总共500个事件 石头、布、剪刀最终结果: 解决方法: Win Column: IF(
Win Column: IF({TotalCount}={UniqueKey},(IF({Outcome}="win",1,0),{Self-Reference})
Lose Column: IF({TotalCount}={UniqueKey},(IF({Outcome}="lose",1,0),{Self-Reference})
Tie Column: IF({TotalCount}={UniqueKey},(IF({Outcome}="tie",1,0),{Self-Reference})
后端数据库创建:
这只允许单元格在事件计数=由事件唯一键标识的行时更改。这反过来会创建一个关于所发生事件的二进制真/假数据库。(所有单元格仍在更改,但如果事件编号不同于唯一键,则单元格自引用自身)
是否有更好的方法在VBA中执行此操作?是否有一种方法可以在不建立0的现有数组的情况下进行增量操作?(目前,您只能运行500个事件,因为我创建的数组在500个事件时停止,但如果能够对每个事件进行增量操作,那就太酷了)
*这是我的第一个问题!建议您使用VBA运行所有迭代,将结果累积到
字典中,然后将数据发布到列表对象中。发布到列表对象中将允许您决定在何处删除以前的数据,或仅向现有数据添加新数据,而advantage希望ListObject
保留公式并自动更新它们以获取新数据。建议使用VBA运行所有迭代,将结果累积到字典中,然后将数据发布到ListObject
。发布到ListObject
将允许您决定在何处消除以前的公式数据,或者只向现有数据添加新数据,这样做的好处是ListObject
保留公式,并自动为新数据更新公式。