Skip to content

搞英语 → 看世界

翻译英文优质信息和名人推特

Menu
  • 首页
  • 作者列表
  • 独立博客
  • 专业媒体
  • 名人推特
  • 邮件列表
  • 关于本站
Menu

添加新行时,Google 表格中的公式会消失 – 解决方案

Posted on 2022-09-28

在 Google 表单中创建的订单要求客户提供他们的全名、商品数量以及是否需要送货上门。最终账单金额是使用 Google 表格中的简单公式计算的。

 // Item cost is $99 per unit. Delivery cost is $19. = IF ( ISNUMBER ( C2 ) , SUM ( C2 * 99 , IF ( D2 = "Yes" , 19 , 0 ) ) , )

Google Sheets Formula

Google 表格所有者已在“ Total Amount ”列的所有行中输入公式,以便在提交新表单响应时自动计算该值。

问题是当新的响应进来时,谷歌表格中的公式会被自动删除。这是默认行为,即使你保护了列范围,单元格中的公式也会在新行上被删除。

如何防止公式被删除

此问题有多种解决方法。

使用 ARRAYFORMULA

不要在列的单个单元格中添加公式,而是将数组公式添加到包含计算值的列的第一行。

 = ARRAYFORMULA ( IF ( ROW ( C : C ) = 1 , "Total Amount" , IF ( ISNUMBER ( C : C ) , C : C * 99 + IF ( D : D = "Yes" , 19 , 0 ) , ) ) )

以下是公式的简单分解:

  • IF(ROW(C:C)=1, "Total Amount", ... – 如果当前行号为 1,则添加列标题。
  • IF(ISNUMBER(C:C), ... – 仅当 C 列中有数值时才计算金额。
  • C:C*99 + IF(D:D="Yes",19,0),) – 如果 D 列设置为 Yes,则将 99 美元乘以项目数量并加上 19 美元。

将 MAP 与 LAMBDA 函数一起使用

您可以使用 Google 表格的新 MAP 函数,该函数将值数组作为输入,并返回通过将 Lambda 函数应用于数组的每个值而形成的新数组。

LAMBDA function

 = MAP ( C : C , D : D , LAMBDA ( Qty , Delivery , IF ( ROW ( Qty ) = 1 , "Total Amount" , IF ( ISNUMBER ( Qty ) , Qty * 99 + IF ( Delivery = "Yes" , 19 , ) , ) ) ) )

使用查询函数

如果数组公式听起来很复杂,这里有另一种方法。

在您的 Google 电子表格中创建一个新工作表,并使用带有类似 SQL 的语句的QUERY函数将所需数据从表单工作表导入到当前工作表中。

 = QUERY ( 'Form Responses 1' ! A : D , "SELECT A,B,C,D" , TRUE )

我们只导入表单响应中输入的工作表数据,所有计算都将在此工作表中进行,而不是在主工作表中。

将简单的金额计算公式粘贴到单元格 E2 中,然后向下拖动十字准线以在所有行中自动填充公式。

 = IF ( ISNUMBER ( C2 ) , SUM ( C2 * 99 , IF ( D2 = "Yes" , 19 , 0 ) ) , )

Query Function for Google Sheets

如果您希望在收到新的调查回复时保留行格式和条件格式,这是推荐的方法。

原文: https://www.labnol.org/google-sheets-formula-deleted-220927

本站文章系自动翻译,站长会周期检查,如果有不当内容,请点此留言,非常感谢。
  • Abhinav
  • Abigail Pain
  • Adam Fortuna
  • Alberto Gallego
  • Alex Wlchan
  • Answer.AI
  • Arne Bahlo
  • Ben Carlson
  • Ben Kuhn
  • Bert Hubert
  • Bits about Money
  • Brian Krebs
  • ByteByteGo
  • Chip Huyen
  • Chips and Cheese
  • Christopher Butler
  • Colin Percival
  • Cool Infographics
  • Dan Sinker
  • David Walsh
  • Dmitry Dolzhenko
  • Dustin Curtis
  • Elad Gil
  • Ellie Huxtable
  • Ethan Marcotte
  • Exponential View
  • FAIL Blog
  • Founder Weekly
  • Geoffrey Huntley
  • Geoffrey Litt
  • Greg Mankiw
  • Henrique Dias
  • Hypercritical
  • IEEE Spectrum
  • Investment Talk
  • Jaz
  • Jeff Geerling
  • Jonas Hietala
  • Josh Comeau
  • Lenny Rachitsky
  • Liz Danzico
  • Lou Plummer
  • Luke Wroblewski
  • Matt Baer
  • Matt Stoller
  • Matthias Endler
  • Mert Bulan
  • Mostly metrics
  • News Letter
  • NextDraft
  • Non_Interactive
  • Not Boring
  • One Useful Thing
  • Phil Eaton
  • Product Market Fit
  • Readwise
  • ReedyBear
  • Robert Heaton
  • Ruben Schade
  • Sage Economics
  • Sam Altman
  • Sam Rose
  • selfh.st
  • Shtetl-Optimized
  • Simon schreibt
  • Slashdot
  • Small Good Things
  • Taylor Troesh
  • Telegram Blog
  • The Macro Compass
  • The Pomp Letter
  • thesephist
  • Thinking Deep & Wide
  • Tim Kellogg
  • Understanding AI
  • 英文媒体
  • 英文推特
  • 英文独立博客
©2025 搞英语 → 看世界 | Design: Newspaperly WordPress Theme