当前位置: 首页 > 知识库问答 >
问题:

如何反转列的顺序在谷歌表后提取的数据从另一个表

李俭
2023-03-14

所以我提取数据从一个谷歌表到另一个谷歌表使用谷歌表API成功。现在我想颠倒列的顺序,例如,想要列A与K,B与J,和上。这是我现在的代码:

function authenticate() {
return gapi.auth2.getAuthInstance()
.signIn({scope: "https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/spreadsheets"})
.then(function() { console.log("Sign-in successful"); },
      function(err) { console.error("Error signing in", err); });
function loadClient() {
gapi.client.setApiKey("");
.then(function() { console.log("GAPI client loaded for API"); },
          function(err) { console.error("Error loading GAPI client for API", err); });
  // Make sure the client is loaded and sign-in is complete before calling this method.
function execute() {
return gapi.client.sheets.spreadsheets.sheets.copyTo({
  "spreadsheetId": "",
  "sheetId": ,

 "resource": {
    "destinationSpreadsheetId": ""
  }
})
.then(function(response) {
            // Handle the results here (response.result has the parsed body).
            console.log("Response", response);
          },
          function(err) { console.error("Execute error", err); });
("client:auth2", function() {
gapi.auth2.init({client_id: ""});
});

如何编辑此代码以使用代码将列按相反顺序排列?以下是指向我的电子表格的链接:https://docs.google.com/spreadsheets/d/1BJ0Y8viJE8a2jU6rfNGuNp5n1jwQauee1p9-PxuuVHE/edit#gid=533169457

共有1个答案

印季
2023-03-14

我相信你的目标和现状如下。

  • 您想通过使用googleapis for Javascript从源表中选择特定的列来将源表中的值放到目标表中。
    • 在您的例子中,作为示例,您希望从源工作表中选择列“A、K、B、J”,并将它们放在目标工作表中。
    • 为了实现您的目标,我想提出以下流程。

    当这个流反映到您的脚本中时,它会变成如下所示。

    使用此脚本之前,请设置spreadsheetIdsourceSheetNamedestinationSheetNameextractColumns的变量。

    const spreadsheetId = "###";
    const sourceSheetName = "###";
    const destinationSheetName = "###";
    const extractColumns = [1, 11, 2, 10];  // "A,K,B,J" in order.
    
    const transpose = (ar) => ar[0].map((_, i) => ar.map(r => r[i]));
    gapi.client.sheets.spreadsheets.values.get({
      spreadsheetId: spreadsheetId,
      range: sourceSheetName
    }).then((res)=>{
      const transposedValues = transpose(res.result.values);
      const extractedColumns = extractColumns.map(c => transposedValues[c - 1]);
      const resultValues = transpose(extractedColumns);
      gapi.client.sheets.spreadsheets.values.update({
        spreadsheetId: spreadsheetId,
        range: destinationSheetName,
        valueInputOption: "USER_ENTERED"
      }, {
        values: resultValues
      }).then((r) => {
        console.log(res.result.values)
      }, function(er) {
        console.error(er.result.error.message);
      })
    }, function(err) {
      console.error(err.result.error.message);
    });
    
    • 方法:电子表格。价值观获取

 类似资料:
  • 我试图通过结合两种算法来返回最佳路径来解决旅行商问题 第一种算法使用环境ArrayList生成最佳路径 第二种算法将优化第一种算法获得的路由,但在这样做时,我需要创建一个新的ArrayList,即环境ArrayList,它被洗牌以匹配最佳路径数组的顺序 请你帮我做这个,因为我在洗牌环境数组列表时遇到了麻烦 这是环境ArrayList,其中每个节点由name、x cords、y cords组成: 返

  • 问题内容: 我确信这个问题以前可能已经被问过,但我似乎找不到正确的答案。如果我有两个清单 我正在尝试使用_list1重新排列_list2中的元素,以便它们完全匹配顺序。什么是最干净的方法?所需的输出: 很抱歉,如果这是重复的,但到目前为止,我只能使用压缩的sorted()方法找到数字列表的答案。 如果_list2是列表列表怎么办? 所需输出: 还有一个假设:如果我想使用_list1作为键对其他任何

  • 所以我在谷歌电子表格文档中有两张表格。 表1有一列包含以下数据: 然后SHEET 2有2列,数据如下: 我需要在“表单提交”上运行一个脚本,该脚本执行以下操作: 打开表1(其中记录了ID) 将其与表2的第1列的值按顺序进行比较 当找到匹配时,将电子邮件地址提取到变量var中 有人能帮我吗?这两张表都在同一个谷歌文档中。 非常感谢。 沙希

  • B页中有图表,其中有源数据。我想以这样一种方式将图表导入到主电子表格B中,当图表在表格B中更改时,它也应该在主表格A中动态更改。 经过大量的研究,我能够找到以下内容: Importrange-只导入数据,而不是图表 复制图表本身并将其粘贴到主工作表A,但当图表在工作表B中动态变化时,它不会更改。 发布图表并将URL作为图像插入-如果主表A是google电子表格,则不起作用,但适用于google文档

  • 问题内容: 我有一个简单的场景: 基本上如果 我想要,如果 我已经尝试了许多在网络上找到的变体,例如,什么都没有。.似乎无法使其正常工作 有任何想法吗? 问题答案: 如果您想更改顺序并使用更大的尺寸,可以使用bootstrap提供。看起来,如果只想更改尺寸,则必须在一个较大尺寸的小提琴上定义常规顺序

  • 问题内容: 如果我有这个: 然后在a中找到b: 有没有办法对列表做类似的事情?像这样: False的结果是可以理解的-因为它正确地寻找了一个元素’de’,而不是(我恰好想要它做的)’d’之后是’e’ 这是可行的,我知道: 我可以处理数据以获得所需的内容-但是有没有一种简短的Pythonic方式可以做到这一点? 需要说明的是:我需要在此处保留顺序(b = [‘e’,’d’],应返回False)。 如