google-sheets - 谷歌表格,数组公式
问题描述
所以我在这里有一个电子表格。这只是一个例子。
https://docs.google.com/spreadsheets/d/1-K8La5G2Gr1h_5_l72nuWLv-OGHETY9CqN66RiZ2Rro/edit?usp=sharing
目标是跟踪我的预算。
U 栏:费用清单 V 栏:以韩元为单位的费用价格。X 栏:相同的费用清单 Y 栏:以美元计的费用价格
我知道将 KRW 转换为 USD 我可以使用公式 =V6:V*GOOGLEFINANCE("CURRENCY:KRWUSD") 因为我想让它从 v6:v 开始,因为我在那里有总数。我可以将它应用到我单击的每个单元格或整列,但整列不起作用,因为我有 Y4 和 Y5 写入的数据。
同样看我是否输入费用的用途,例如如果我在 U8 上输入“restaurant”,“restaurant”将自动在 X8 上打印。同样的问题出现在如果我使用 =arrayformula(U6:U) 那么它将不起作用,因为我在 X4 和 X5 列中有数据。
L、M、N、O、P 和 Q 列是我想要的样子,但我必须复制和粘贴 L 和 O 列。并且必须单独选择单元格,复制并粘贴公式 =M7:M *GOOGLEFINANCE("CURRENCY:KRWUSD") 我只是想减少时间,我可以在适当的列中输入原始项目名称和成本,而发生转换的其他 2 列将自动发生而无需选择新单元格并复制并粘贴公式
解决方案
你是对的 - 你需要ARRAYFORMULA
,但它需要一些控制,否则它会将列复制到每个可用的单元格中。因此,您还希望ARRAY_CONSTRAIN
限制显示公式的行数和列数(在您的情况下,只是行数)。
单元格 Y6:=array_constrain(arrayformula(round(V6:V*googlefinance("CURRENCY:KRWUSD"),2)),21,1)
数组是V6:V
; 它乘以转换的值,并将其四舍五入到小数点后 2 位。该公式被限制在 21 行(表格的深度)和一列中显示。
单元格 W6:=array_constrain(arrayformula(round(Z6:Z/googlefinance("CURRENCY:KRWUSD"),2)),21,1)
与单元格 Y6 相同,不同之处在于 1) 数组 = Z6:Z,以及 2) 它将美元金额除以兑换率。
另外两个需要注意的单元格: 单元
格 V5:=D15-sum(V6:W26)
单元格 Y5:=G15-sum(Y6:Z26)
它们都对各自的货币列求和。
该表如下所示:
推荐阅读
- python-2.7 - 在pcan can总线上发送不同ID的消息,使用python可以
- visual-studio - 如何检索 VS 语法颜色
- php - 如何在 Joomla 模型中执行 LOAD DATA LOCAL INFILE
- dart - 为什么 Dart 没有弄清楚下面代码中的类实例变量
- spring - 如何对 Spring Security 默认 POST“/login”进行单元测试
- python - 同时打印到多行python
- java - Spring XML模型中的XML文本字符串总是被转义 - 如何防止
- r - 如何在“plotly”的子图中分配“x 轴”标题并在“标题”中插入希腊字母“δ”?
- terraform - terraform.tfvars 与 variables.tf 的区别
- javascript - 如何检查数组对象中是否存在元素