任何excel单元格公式都可以将其自身值除以1000吗?

任何excel单元格公式都可以将其自身值除以1000吗?,excel,formula,divide,Excel,Formula,Divide,如果我以编程方式或手动方式在excel单元格中输入一个值,比如10000,我需要它自动将其除以1000,这会发生吗 第一,我不是问显示格式,我需要认真更改输入的值 第2条,该公式不适用于整个工作表。您可以使用工作表更改事件来执行此操作。但是,为了确保只执行一次,而不是每次触发此事件,您需要跟踪某个位置的值。你可以在一张看不见的纸上,或者在纸上的其他地方,等等 从逻辑上讲,你基本上是检查一个单元格何时被改变,如果它在你想要的单元格范围内。如果是,则通过将其与记录相匹配,确保它与触摸单元格之前的值不

如果我以编程方式或手动方式在excel单元格中输入一个值,比如10000,我需要它自动将其除以1000,这会发生吗

第一,我不是问显示格式,我需要认真更改输入的值


第2条,该公式不适用于整个工作表。

您可以使用工作表更改事件来执行此操作。但是,为了确保只执行一次,而不是每次触发此事件,您需要跟踪某个位置的值。你可以在一张看不见的纸上,或者在纸上的其他地方,等等

从逻辑上讲,你基本上是检查一个单元格何时被改变,如果它在你想要的单元格范围内。如果是,则通过将其与记录相匹配,确保它与触摸单元格之前的值不同(未进行任何更改)。如果已更改,只需除以1000并更新记录

希望这有帮助

Private子工作表\u更改(ByVal目标作为范围)
'关闭事件以阻止此循环
Application.EnableEvents=False
比方说,你希望这一切发生在A1:A10
'将单元格的值存储在隐藏的工作表或某处。这里假设B1:B10是隐藏记录
如果Target.Column=1,则
如果Target.Row>0且Target.Row<11,则
如果Target.Value Target.Offset(,1),则
Target.Value=Target.Value/1000
Target.Offset(,1).Value=Target.Value
如果结束
如果结束
如果结束
"重开事件",
Application.EnableEvents=True
端接头

抱歉,由于某些原因,格式化操作没有正确地缩进代码…

如果我是你,我会避免这样做,因为用永久除以1000重新编辑单元格时会遇到问题。当然,当编辑开始时,你可以将这个数字乘以1000,但我不认为这是非常可靠的

我将采用的方法是,在电子表格中有一个区域(用户通常不会看到),其中包含形式为A1/1000的公式,并使其余的计算流依赖于这些单元格


这样做意味着您可以在电子表格中保留所有内容,而不使用VBA。

非常感谢。这很难,我真的不应该经历这个解决方案。。。最后,我的老板告诉我使用数字格式来隐藏任何相关的单元格,所以它们看起来都像是被1000除了