【问题标题】:Google spreadsheet. How to update cell value depending on which cell was edited谷歌电子表格。如何根据编辑的单元格更新单元格值
【发布时间】:2014-09-05 07:30:07
【问题描述】:

假设我有 3 列,每列包含相同的价格,但使用不同的货币。我需要根据已更新的列更新其他两个。 我认为我需要其中一种货币的基值,并在编辑每列中的一个单元格时以某种方式更新该值,然后通过使用该基值计算值来更新其他列。 这可以在谷歌电子表格中做到吗?据我所知,每个单元格可能只包含一个公式。

【问题讨论】:

标签: excel google-apps-script google-sheets google-docs


【解决方案1】:

据我所知,每个单元格可能只包含一个公式。

没错。此外,鉴于您要手动编辑值,您的单元格根本不能包含公式。

让我建议您另一种处理您的情况的方法:

[A]      [B]         [C]               [D]                 [E]
VALUE    CURRENCY    VALUE IN EUROS    VALUE IN DOLLARS    VALUE IN POUNDS
 1,00    Euros        1,00              1,29                0,79
10,00    Dollars      7,72             10,00                6,12

您将拥有两个可编辑的列(valuecurrency)和三个自动计算的列。 currency 列甚至可以有一个下拉组合来选择每个值,而不必键入它(为此,只需为该列定义一个验证规则)。

这些计算列的公式非常简单。例如:

[C2]: IF(OR(A2="";B2="");"";A2*IF(B2="Euros";1;IF(B2="Dollars";0,772;1,26)))

类似的东西。当然,转换值应该移动到配置单元格中,这样就可以在不编辑公式的情况下轻松更改它们。


如果您希望/需要只保留您提到的 3 列的工作表,那么您需要的内容无法通过简单的公式来完成。您需要编写一个脚本来检测单元格上的编辑事件并更新其他两个事件。我确信它可以完成,我只是对电子表格 API 不太熟悉,无法告诉您如何操作,但一定不会很难。

【讨论】:

    【解决方案2】:

    您可以在工作表上创建一个按钮。每当您单击它时,就会执行一个脚本来执行您需要的操作。

    【讨论】:

    • 声望为 8 的人可能不知道该怎么做。另外,基于 onEdit() 的自动脚本不是更高效吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    • 1970-01-01
    • 1970-01-01
    • 2021-01-10
    • 1970-01-01
    相关资源
    最近更新 更多