Google表格,根据包含公式的单元格值添加行

Posted

技术标签:

【中文标题】Google表格,根据包含公式的单元格值添加行【英文标题】:Google Sheets, Add row based on cell value with formulas included 【发布时间】:2021-10-16 06:19:24 【问题描述】:

我在谷歌表格电子表格中有一个相当复杂的表格(至少对我来说),旨在跟踪财政年度的股票持有量(它还包括成本基础调整和资本收益的计算)。

表格分为两部分,左侧详细说明了购买情况,包括价格、购买金额以及右侧与库存处置相关的日期。我试图允许计算不同时处理整个采购订单,即,如果购买了 15 个但仅售出 4 个,另外 11 个将在以后出售。

我可以看到实现这一点的最容易阅读的方式是,如果公式/脚本可以读取已售出的数量,如果低于购买量,请在下方添加一行,在需要的地方填写适当的值以进行进一步计算。不幸的是,我完全不知道如何让它发挥作用。

Google 表格中是否有允许根据单元格的值添加行的功能?如果是这样,我是否也可以让它填写表格的适当公式以进行适当的计算?

作为我希望的示例,下图中是当​​前表格的示例,如果 K8

我知道这是非常小众的,假设它甚至是可能的,如果有人对从哪里开始寻找任何建议,YouTube 视频或诸如此类的东西,将不胜感激。

非常感谢。

Sample Image of Table

[编辑:我被用户 on another forum 引导到 Apps 脚本文档,稍微窃取了 ***、那里用户的鼓励以及我能够自己编写函数的文档]

【问题讨论】:

【参考方案1】:

作为一个更新,在一些轻微的帮助和大量的窃取下,我能够将这个脚本放在适当的位置,以完全满足我的需要。

// global 
var ss = SpreadsheetApp.getActive();

function onOpen() 
  var menu = [name:"Split stock parcel", functionName:"addRow"];
  ss.addMenu("Split Sale", menu);


function addRow() 
  var sh = ss.getActiveSheet();
  var cell = sh.getActiveCell();
  var SelectRow = cell.getRow(); 
  var lCol = sh.getLastColumn(), range = sh.getRange(SelectRow,5,1,1), range1 = sh.getRange(SelectRow, 9, 1, 2), range2 = sh.getRange(SelectRow,13,1,1), range3 = sh.getRange(SelectRow,16,1,4), clone = sh.getRange(SelectRow,8,1,1).getFormula(), clone1 = sh.getRange(SelectRow+1,8,1,1), range4 = sh.getRange(SelectRow+1,1,1,1), range5 = sh.getRange(SelectRow,3,1,1); 
  sh.insertRowsAfter(SelectRow, 1);
  range.copyTo(sh.getRange(SelectRow+1, 5, 1, 1), contentsOnly:false);
  range1.copyTo(sh.getRange(SelectRow+1, 9, 1, 2), contentsOnly:false);
  range2.copyTo(sh.getRange(SelectRow+1, 13, 1, 1), contentsOnly:false);
  range3.copyTo(sh.getRange(SelectRow+1, 16, 1, 4), contentsOnly:false);
  range5.copyTo(sh.getRange(SelectRow+1,3,1,1),contentsOnly:false);
 clone1.setFormula(clone)
 range4.setValue("Split Sale")

【讨论】:

正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。

以上是关于Google表格,根据包含公式的单元格值添加行的主要内容,如果未能解决你的问题,请参考以下文章

Google表格:根据单元格值返回相同行数的公式

谷歌表格 - 根据公式内的另一个单元格值设置行号?

Google电子表格脚本,用于根据单元格值插入新行

根据每个表格行中的单元格值更改按钮文本 - Jquery

基于单元格值的重复行

如何使用 Google Apps 脚本将公式添加到 Google 表格?