使用 Google Apps 脚本将数据从数组复制/推送到工作表范围,一次一行

2023-12-08

我在原始表上使用 .getValues() 创建了一个多维数组sheetValues[][]。我想将sheetValues数组中的值复制到目标工作表中。如何将sheetValues数组每行的内容推送到目标工作表中?

什么函数允许我将数组的每一行一次一行(检查 IF 条件后)推入目标表的相应范围?

这是代码片段:

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Source Sheet"); //Source sheet that has all data
var lastRow = sheet.getLastRow(); //last row number of Source sheet
var sheetValues = sheet.getRange(1, 1, lastRow, 18).getDisplayValues; //Copy Display values to an array; getDisplayValues() is used instead of getValues() to ignore formulas in the source cells such as "IMPORTRANGE"
var targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetbyName('Target Sheet'); //destination sheet
var currentRow = targetSheet.getLastRow(); //current last row of the destination sheet (start copying after this row)
var target = targetSheet.getRange(currentRow+1, 1); //target range where the copying of data should begin in destination sheet

loop through each row of the array (sheetValues) to check if the status (column I) is 'On Target'; if yes, copy that entire row to the target range defined above
for (var i = 0; i <= lastRow; i++) {
  if (sheetValues[i][9] == 'On Target') {
    How do I copy/push the entire row at once (column 1 - 18) directly into the target range (currentRow, columns 1-18)? What function do I use?
  }
  currentRow++;
}

永远不要“一次推送数组的每一行”。这是笨重的代码,启动速度非常慢。设置值与获取值非常相似。您可以声明一个范围变量,其中包含适合值尺寸的适当坐标[ ][] 数组,并将整个值数组传递给 Range 对象的“setValues()”方法。

getRange() 的方法签名之一如下:

sheet.getRange(row, column, numberOfRows, numberOfColumns);

更多信息https://developers.google.com/apps-script/reference/spreadsheet/sheet#getrangerow-column-numrows-numcolumns

前 2 个参数用于范围中最左上角的单元格,而其他参数则定义范围应跨越的行数和列数。

假设您想开始从目标工作表中的第一个单元格插入值,下面是您需要的单行代码。

sheet.getRange(1, 1, sheetValues.length, sheetValues[0].length);

行数是数组的长度,列数是数组第一个元素(行)的长度。

UPDATE

我错过了埋在你的代码中的评论。您可以在将值写入目标工作表之前对其进行过滤。

sheetValues = sheetValues.map(function(row){

if (row[9] == 'Target') { return row;  }

});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Google Apps 脚本将数据从数组复制/推送到工作表范围,一次一行 的相关文章

  • 嵌入来自谷歌驱动器的图像,没有灰色边框和缩放工具?

    I have a webpage that has an image that is stored in google drive and using the google drive embed code results in this
  • 如何隐藏工作表?

    如何使用 googleScript 隐藏电子表格应用程序中的一些工作表 我有一个包含多个工作表的电子表格 我想使用 googlScript 将电子表格缩小为仅第一个可见工作表和所有其他隐藏工作表 sheet hideSheet https
  • window.location.href = window.location.href 返回空白页

    我正在使用 Google App Script 创建一个网页 单击按钮后 我尝试重新加载页面 但以下操作均无效 窗口 位置 href 窗口 位置 href window location reload true 他们正在重定向到空白页面 下
  • 重命名带有“完整工作表”图表的工作表会导致电子表格重新加载

    Google 表格允许将图表移动到自己的表格中 不过 谷歌脚本似乎无法重命名这些工作表 而不会使电子表格崩溃并强制其重新加载 要明白我的意思 请尝试以下操作 1 创建新的电子表格并在其中放入一些数据 2 使用数据创建任何类型的图表 3 编辑
  • 如何编辑范围? // Google Classroom 控制 Google Apps 脚本中学生访问的权限范围

    我是一名高中老师 正在针对 Google Classroom 编写 Google Apps 脚本 我想创建一个类似于学生成绩视图的电子表格 我的学生可以使用他们的凭据进行访问 我已经成功编写了代码 这样我就可以通过在代码中显式放置学生的 I
  • 如何将值传递到 HTML 模板侧边栏?

    我的任务是更换一些现有的 Access 数据库 我想知道你们是否可以帮助我 目前 我有一个谷歌表格 https docs google com spreadsheets d 1JS5Iwx60Zk7VL8lYz6Yj7ew4eYPhl2Nk
  • 根据表单提交创建名称的新工作表

    在 Google Sheets 中 我有一个脚本 用于为提交的每个 Google 表单创建一个新工作表 它应该创建一个新工作表 其名称基于最后一列 G 列 不是表单提交的列 然后 它从最后一行和标题行获取信息并将其复制到创建的工作表的前两行
  • 用于清除多个范围的 Google 脚本。

    我有许多电子表格 每周填写一次 并在新的一周开始时关闭 我编写了一个脚本来遍历并清除许多不同工作表中的各种范围 请参阅下面的代码 我的问题是有没有更好的方法来做到这一点 而不是必须一次清除一个部分的范围并拥有一百万个clearContent
  • 如果输入重复,则覆盖 Google 表格(用于表单响应)行

    因此 我一直在尝试找出如何阻止谷歌表单中的谷歌表格响应输出中出现重复的行 如果找到这个链接 听起来它正是我想要的 表单 Google 脚本防止重复 https stackoverflow com questions 16965687 for
  • 有没有办法将 Google 文档分割成多个 PDF?

    我想在 Google Scripts VBA 代码中复制我为 Word 文档编写的代码 基本上 它通过搜索我插入文档中的标签 将文档 切片 为多个 PDF 文件 目的是允许合唱团使用 forScore 管理乐谱的应用程序 在切片点插入先前注
  • 移动设备:缺少操作

    我正在尝试执行该操作的 POST 但是 当我发出请求时 我收到代码 400 表示操作值丢失 my code function mobileAPIPOST var response UrlFetchApp fetch https www go
  • 如何在公式中的 & 之间添加换行符以生成 QR URL

    我正在谷歌表格中创建一个电子表格 用于跟踪财产房间的库存 我使用二维码作为标签 将其放置在房产上 并将与该特定房产的相关信息相关联 我正在使用以下代码 image https chart googleapis com chart chs 2
  • 模板化 HTML 脚本中的换行符

    如果我有一个 HTML 文件 test html p p 和一个脚本函数 var t HtmlService createTemplateFromFile test html t str test nstring var content t
  • 列出 Google 云端硬盘上特定演示文稿/文档的所有共享用户

    我们需要一份完整的列表 列出已获得 Google 云端硬盘上特定演示文稿 文档的 共享 查看权限的人员 我们有屏幕截图 但可能还不够 我们如何以编程方式检索这些信息 附加到 a 的属性File对象包括三个与用户相关的项目 Owner 一个单
  • 如何使用脚本格式化 Google 文档中的文本

    我想编写一个脚本来查找所有特定单词并格式化它们的颜色 我尝试了以下操作 但似乎不起作用 function ChangeColor var body DocumentApp getActiveDocument getBody var mywo
  • Google Web Apps - 获取用户电子邮件但以所有者身份运行脚本

    我最近迷上了谷歌网络应用程序 但我遇到了一些进退两难的问题 我正在尝试构建一个对非常特定的用户开放的应用程序 并且他们正在查看的数据根据 其访问组进行过滤 在谷歌表格中 我列出了用户电子邮件及其各自的访问组 A 列 电子邮件 B 列 访问组
  • 清除内容并从另一张纸复制

    我编写了一个脚本 旨在清除 Google Sheets 电子表格的内容并复制并粘贴另一个工作表的内容 需要清除的工作表称为 NEW SHEET 要复制的工作表称为 Database 由于某种原因 该脚本目前无法运行 当我运行它时什么也没有发
  • Clasp 无法创建新的 Apps 脚本

    我用这个终端命令克隆了一个应用程序脚本 clasp clone
  • 如何使用 google Sheet 作为数据库

    如何在 HTML Web 应用程序中生成 Google 工作表数据 并允许用户从 HTML Web 应用程序更新评论 我在谷歌表中有一些数据 通过谷歌表单提交 我想使用搜索按钮根据 请求编号 从网络应用程序搜索工作表数据 应该能够更新网络应
  • Google Apps 脚本中的范围要求过高

    Here s 自定义 Google 表格 https docs google com spreadsheets d 1qwOzxP qHWRhI2HZmGdlgKLlXCYIQz4XO2tq1EY 8NE edit gid 0与脚本代码 v

随机推荐

  • 异常如何转移并找到处理程序?

    当引发异常时 将启动堆栈展开 直到遇到处理代码 但我对整个过程的机制有点不清楚 1 异常存储在哪里 我并不是指实际的异常对象 它可能很大 例如有一个消息字符串或其他东西 但如果您愿意的话 也可以是实际的引用或指针 它必须是某个统一的存储位置
  • Xcode 4 数据模型版本控制错误?

    安装了 Xcode 4 一切似乎都很好 除了 当我尝试向核心数据模型添加版本控制时 在说明中 它说我应该在导航器中选择数据模型 然后 选择编辑器 gt 转换为版本化模型 好吧 编辑器 菜单没有 转换为版本化模型 项目 跳过这一步会使 Xco
  • APPX Windows 应用商店包可以包含多个“应用程序”吗?

    我试图更好地理解 APPX 包的 appxmanifest 文件 我注意到它有一个
  • 在“沙盒环境”中从 .Net 应用程序加载程序集

    I am 目前正在开发一个应用程序用户将动态选择 dll 应用程序将执行该 dll 中的一些方法 如果您点击第一个链接 您会看到我正在开发一种Robocode使用 Net Framework的游戏应用程序 例如 当战斗开始时 run执行 d
  • JScrollPane 和 JViewport 最大尺寸小于内容的滚动限制

    我有一个JFrame含有一个JScrollPane含有一个JPanel The JPanel包含一堆JTextAreas 我正在向其中加载大量文本 大约 8k 10k 个字符 布局工作正常 尽管滚动有点滞后 真正的问题似乎是JPanel J
  • Laravel 5 覆盖登录功能

    我正在开发 Laravel 项目并尝试覆盖 AuthenticatesAndRegistersUsers 中的默认 postLogin 所以我更新了我的 AuthController 并添加了它来覆盖内置登录 public function
  • 无需 Firebase 云消息传递即可推送通知

    是否可以使用第 3 方服务来发送推送通知而不依赖 Google 的 Firebase 云消息传递 FCM 如果默认情况下应用程序中不包含 Firebase 包 那么创建 使用自定义框架是否可以具有与 Firebase 类似的功能集 或者 F
  • 将文本添加到字符串的开头

    在字符串开头添加新值最快的方法是什么 var mystr Doe mystr John mystr 这对你不起作用吗
  • 字符到字形映射表

    我正在关注apple com 上的文档 我设法得到The cmap encoding subtables 我100 知道platformID platformSpecificID是正确的 但是offset是可疑的 这是数据 array 3
  • 如何在opencl中创建离线编译并创建其二进制文件?

    在OpenCl的在线编译中 我们要做 program clCreateProgramWithSource context 1 const char source str const size t source size ret 但是 对于
  • Gradle 依赖项中的重复类

    我正在构建一个 Android 应用程序 并使用 recaptcha 和 easywsdl 存储库 这两个存储库都包含 okhttp 和 okio jar 并且在启动存在重复类的应用程序时出现错误 然而 这些并不相同 如果我从项目中排除 o
  • YouTube API 用于获取频道上的所有视频

    我们需要一个按 YouTube 频道名称排列的视频列表 使用 API 我们可以使用以下 API 获取频道列表 仅频道名称 https gdata youtube com feeds api channels v 2 q tendulkar
  • 在模态上滚动时防止触摸设备上的主体滚动

    我正在开发一个网络应用程序 该应用程序使用大量模态叠加层以及模态中的可滚动内容 在触摸设备上 特别是在 Android 上 移动浏览器希望滚动模式后面的正文内容 而不是模式内的实际可滚动内容区域 或者 如果内容确实滚动 当它到达可滚动区域的
  • 将 byte[] 转换为图像

    我已将图像上传到我的数据库中byte 现在我想把它展示出来 出现错误 用户代码未处理参数异常Parameter is not valid 在这一行 newImage System Drawing Image FromStream strea
  • 使用 JSoup 从表中提取数据

    我想使用 JSoup 框架提取该表 以将内容保存在 表 数组中 第一个 tr 标签是表头 以下所有内容 不包括在内 描述了该内容 table width 100 cellspacing 0 cellpadding 4 border 1 tr
  • 只允许图像FILE_UPLOAD

    基本上下面的代码只允许图片通过我添加的 mov and mp4到允许列表 但上传时它仍然输出该文件不是图像 只是想知道我哪里出了问题 帖子及形式
  • 如何使用手柄在android中缩放视图?

    我正在尝试实现一个手柄来缩放 android 中的视图 我不想使用多点触控之类的东西 而是希望能够仅用一根手指来调整图像大小 这是我的活动代码 我觉得好像我非常接近 但有五件事无法正常工作 缩放已关闭 它的增长速度比应有的要快得多 Solv
  • 在运行时确定泛型方法参数的类型

    给定一个具有以下结构的类 我试图确定泛型方法的调用者分配的参数 T 的类型 public class MyClass public
  • 使用 GKMatch 的 Game Center 多人游戏但似乎无法连接

    大家好 我是 iOS 游戏中心的新人 我正在尝试将使用匹配的多人游戏功能添加到我的游戏中并遵循文档 到目前为止 我的 2 个客户端可以成功获得匹配 即调用 matchmakerViewController didFindMatch 回调并传
  • 使用 Google Apps 脚本将数据从数组复制/推送到工作表范围,一次一行

    我在原始表上使用 getValues 创建了一个多维数组sheetValues 我想将sheetValues数组中的值复制到目标工作表中 如何将sheetValues数组每行的内容推送到目标工作表中 什么函数允许我将数组的每一行一次一行 检