【问题标题】:how to insert a row in the middle of a google spreadsheet如何在谷歌电子表格中间插入一行
【发布时间】:2010-09-14 18:15:18
【问题描述】:

我正在尝试在 google 工作表中间插入一行,但在 api 文档中找不到方法,

我无法在底部添加新行,因为使用电子表格数据的程序(不是我自己编写的)只会忽略添加到底部的新行。

有人有什么想法吗?

【问题讨论】:

  • 我不确定您要的是什么。您想将几行数据向下移动一行并在移动开始的位置插入新数据?并从底部失去一排?
  • 我随后发现添加到底部的行被忽略的原因是因为我将行添加到电子表格而不是 dataTable,这可以在 java 中访问,但我在 c# 中所以还没有设法弄清楚如何将一行附加到数据表中,对表中已经存在的单元格的修改工作正常。
  • 你看过Spreadsheets API documentation吗?有一个代码 sn-p 显示如何向工作表添加一行。

标签: c# google-apps-script google-sheets google-docs-api google-spreadsheet-api


【解决方案1】:

以下代码在工作表中间添加一行:

function onOpen() {
  // get active spreadsheet
  var ss = SpreadsheetApp.getActiveSpreadsheet();

  // create menu
  var menu = [{name: "Insert row ", functionName: "insertRow"}];

  // add to menu
  ss.addMenu("Insert", menu);  
}

function insertRow() {
  // get active spreadsheet
  var ss = SpreadsheetApp.getActiveSpreadsheet();

  // get first sheet
  var sh = ss.getSheets()[0];

  // determine number of rows (compensate for header)
  var rows = sh.getMaxRows();

  // insert row in the middle
  var middle = rows/2;
  sh.insertRows(middle);
}
  1. 它将菜单项添加到现有菜单中
  2. 在工作表中间插入一行

查看我准备的示例文件:add row in the middle

【讨论】:

  • 感谢您的回答,但是由于这已经超过两年了,我放弃了我采用的方法并且无法检查您的答案,假设您的方法有效,我会将其标记为已接受因为它看起来会。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多