Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 谷歌应用程序脚本合并列_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 谷歌应用程序脚本合并列

Google apps script 谷歌应用程序脚本合并列,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我有一个谷歌电子表格,有多个列,每列中的行数可变。我想把所有的栏目合并成一个栏目 因此,如果以下是数据: 第1栏、第2栏、第3栏、第4栏 第1行:A、B、C、D 第2行:,,E 我想得到 第1行:A 第2行:B 第3行:C 第4行:D 第5行:E 我想这是非破坏性的原始工作表,所以它应该创建一个新的电子表格选项卡与唯一的名称。唯一的名称很重要b/c我想在多个不同的电子表格上运行此功能。唯一名称将避免重叠 请求是帮助我编写脚本,以便在google apps电子表格中执行此转换 谢谢你的帮助 这是脚

我有一个谷歌电子表格,有多个列,每列中的行数可变。我想把所有的栏目合并成一个栏目

因此,如果以下是数据: 第1栏、第2栏、第3栏、第4栏 第1行:A、B、C、D 第2行:,,E

我想得到 第1行:A 第2行:B 第3行:C 第4行:D 第5行:E

我想这是非破坏性的原始工作表,所以它应该创建一个新的电子表格选项卡与唯一的名称。唯一的名称很重要b/c我想在多个不同的电子表格上运行此功能。唯一名称将避免重叠

请求是帮助我编写脚本,以便在google apps电子表格中执行此转换


谢谢你的帮助

这是脚本,如果遇到任何问题,请告诉我,目前它忽略空白单元格和值“0”

函数myFunction(){
var电子表格=SpreadsheetApp.getActiveSpreadsheet();
var sheet1=电子表格.getSheets()[0];
var lastRow=sheet1.getLastRow();
var lastColumn=sheet1.getLastColumn();
var values=sheet1.getRange(1,1,lastRow,lastColumn).getValues();
var d=新日期();
var newSheet=spreadsheet.insertSheet(“Sheet:+d.getTime());
var计数器=1;

对于(var i=0;iso,有什么疑问?你只是想让某人为你编写一个“转置”脚本?我不知道如何在谷歌应用程序中编写脚本,所以答案是肯定的。:)不知道为什么投反对票?当有人请求帮助但被否决时,这似乎没有多大帮助或效果。只需阅读工具提示中对反对票的描述“这个问题没有显示任何研究成果”…stackoverflow是开发者讨论的地方,不是向开发者询问脚本/程序的地方。非常感谢!我会尝试一下。所以它基本上是javascript?顺便问一下,Andrei,你是在odesk还是elance上,以防将来我需要发布类似的问题?因为我想把它全部放在一个专栏中,所以我最后翻了两行:for(var i=0;iAndrei-我遇到了一个缓存问题。如果我在两个不同的工作表上运行同一个脚本,它只使用第一个工作表中的数据。我在两台不同的计算机上尝试了它,但出现了相同的问题。我在脚本中没有看到任何可能导致此问题的内容。你能看到它是否也为你缓存吗?复制,(1)创建包含跨多行和多列数据的工作表。(2)在第一个工作表上运行脚本。(3)在第二个工作表上运行脚本。(4)查看两个新输出工作表的数据是否重复。您好,Jignesh,如果您想让您所在的任何工作表生成一个带有转置数据的新工作表,请将此行替换为:var sheet1=spreadsheet.getSheets()[0];替换为:sheet1=spreadsheet.getActiveSheet();
function myFunction() {
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet1 = spreadsheet.getSheets()[0];
  var lastRow = sheet1.getLastRow();
  var lastColumn = sheet1.getLastColumn();
  var values = sheet1.getRange(1, 1, lastRow, lastColumn).getValues();
  var d = new Date();
  var newSheet = spreadsheet.insertSheet("Sheet: "+d.getTime());
  var counter=1;
  for (var i=0;i<=lastRow-1;i++) {
    for (var j=0;j<=lastColumn-1;j++) {
      if(values[i][j]!="") {
        newSheet.getRange(counter,1).setValue(values[i][j]);
        counter++;
      }
    }
  }
}