标签: google-apps-script

获取 Google Apps 脚本 CalendarApp 类中的所有日历

因此,Google Apps 脚本允许您getCalendarByIDgetCalendarsByNamegetDefaultCalendar,当您需要定位特定日历时,这非常有用。但是,我想知道是否有办法获取与该帐户关联的所有日历?

我已经尝试过getCalendarsByName()getCalendarsByName('')并且getCalendarsByName('*')都不起作用。

google-calendar-api google-apps-script

0
推荐指数
1
解决办法
2576
查看次数

在谷歌电子表格中的查询选择语句中将时间戳转换为日期

我正在从表单数据收集表导入数据,我想将时间戳更改为日期,以便更轻松地进行过滤。

我想要做的是能够根据我提供的日期过滤数据,例如我想过滤 2013 年 4 月 20 日到 2013 年 5 月 1 日之间的数据。目前我的时间戳采用日期时间格式,因此很难做到这一点。

有没有办法让Query(A:D,"select date(A), B, C",1)我的表只有日期而不是日期时间或

如果我设置 A1 = 4/20/2013, B1 = 5/1/2013, C1 =Query(Sheet1!A:D,"select A, B, C, D where A >= date'"""&A1&"""' and A <= date'"""&B1&"""'",1)

请帮助我达到这一点

谢谢

科哈尔

google-sheets google-apps-script

0
推荐指数
1
解决办法
1万
查看次数

如何使用 Google Apps 脚本处理 jQuery DataTables 服务器端数据

当数据在初始页面加载时提供时,DataTables 与 GAS HTMLService 配合得很好,但 GAS 的更好做法是“异步加载数据,而不是在模板中”。此外,数据表的服务器端处理为大型数据表提供了响应更快的 UI。我正在寻找一种满足这些建议的模式。我从一个基本的 DataTables 示例开始,转换为 GAS HTMLService 模板模型。

GS 代码:

 function doGet() {
   Logger.log("Start");
   var start = new Date();
   // rt params
   // var rtParameters = getRunTimeParameters(request);
   // uses HtmlService to send page based on a template
   var temp = HtmlService.createTemplateFromFile('chart');
   // prepare data for initial page

   Logger.log("TIME to return:"+ (new Date() -start));
   return temp.evaluate();
 }

  function include(filename) {
    // helper function to load html into template from sep files in project
    return HtmlService.createHtmlOutputFromFile(filename)
    .getContent(); …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-plugins google-apps-script

0
推荐指数
1
解决办法
3952
查看次数

如何在 Google 文档中设置行/单元格的段落属性?

我可以在 Google 文档中插入表格。我设法更改每行的一些属性(如字体大小、粗体、填充)。

然而,段落属性让我陷入困境。例如 LINE_SPACING、SPACING_AFTER、SPACING_BEFORE。

如何设置表格行和表格单元格的属性?

当我这样做时:-),如何将项目符号列表放入单元格中?

多谢。

google-docs google-apps-script

0
推荐指数
1
解决办法
814
查看次数

让google脚本更新html

我正在尝试制作一个读取电子表格的 Google 脚本,并将该信息发送到一个简单的 HTML,但我不知道如何将 Google scrip 上收集的信息发送到 java 脚本。

这是代码:

谷歌脚本

function doGet() {
  return HtmlService.createHtmlOutputFromFile('index');
}

    function getUserName() {
  var ss = SpreadsheetApp.openById("1MRr0iZJoK-mfzIM6nMgycAg8BpPOCt3X-ndwYPZ3BeA").getActiveSheet();
  var lastRow = ss.getLastRow();
  var range = ss.getRange(2, 1, lastRow);
  var Names = range.getValues();
  return Names;
}
Run Code Online (Sandbox Code Playgroud)

HTML 和 JavaScript

<script>
  function createPost() {
    var name[] = google.script.run.getUserName();
    var Post_area = document.getElementById('post_area');
    for(var i=0; i < qnt; i++){
      var element = document.createElement("div");
      element = div.innerHTML ='<img src="' + img[i] + '" alt="' + name[i] + '" …
Run Code Online (Sandbox Code Playgroud)

html javascript google-apps-script

0
推荐指数
1
解决办法
4303
查看次数

Google 表格,在一个单元格中设置多个超链接的脚本

我的目标是创建一个电子表格单元格,其中包含来自 Google 脚本的多个超链接。

我可以创建一个带有多个链接的单元格,选择单元格文本的一部分,然后使用Ctrl+K或 menu insert linkgoogle and yahoo例如,我的单元格有两个超链接,每个搜索引擎一个。

我可以通过两种不同的方式阅读此单元格中的超链接:

 var range = SpreadsheetApp.getActiveSheet().getRange('A1');
 var richText = range.getRichTextValue();
 var allRuns = richText.getRuns();
 var firstLink = allRuns[0].getLinkUrl();
 var secondLink = allRuns[2].getLinkUrl();
 var gLink = richText.getLinkUrl(0, 5);
 var aLink = richText.getLinkUrl(11, 15);
Run Code Online (Sandbox Code Playgroud)

但是没有setLinkUrl可用的方法。我也无法在Google 表格 API 中找到任何内容。

我复制了这个单元格并在 Linux 中使用 xclip,命令

xclip -selection clipboard -o  -t text/html
Run Code Online (Sandbox Code Playgroud)

结果是

<meta http-equiv="content-type" content="text/html; charset=utf-8">                                                                                                                                                                                                  
<style type="text/css">                                                                                                                                                                                                                                              
<!--                                                                                                                                                                                                                                                                 
td {                                                                                                                                                                                                                                                                 
    border: 1px solid #ccc;                                                                                                                                                                                                                                          
} …
Run Code Online (Sandbox Code Playgroud)

hyperlink google-sheets google-apps-script google-sheets-api

0
推荐指数
1
解决办法
1008
查看次数

将数据发布到 Web 应用程序时,XMLHttpRequest 被 CORS 策略阻止

CORS当我尝试通过 Web 应用程序将数据发布到我的 Google 电子表格时收到错误响应。这是我得到的错误:

从源“http://localhost:3000”访问“myGoogleSpreadSheetApiURL”处的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:不存在“Access-Control-Allow-Origin”标头在请求的资源上。

我做了一些解决方案,我在互联网上搜索,但我无法解决问题......我已经可以从 Google 电子表格中获取我的 JSON 数据。

当我推送我的 时createButton,我可以在我的 Google 电子表格上发布和写入我的数据。

我应该如何修复我的代码?你有什么主意吗 ?

这是我的 react.js 代码:

import React,{ Component } from 'react';
import Paper from '@material-ui/core/Paper';
import axios from 'axios';

axios.defaults.baseURL = 'http://localhost:3000';
axios.defaults.headers.post['Content-Type'] = 'application/json;charset=utf-8';
axios.defaults.headers.post['Access-Control-Allow-Origin'] = '*';

const api = 'https://myGoogleSpreadSheetApiUrl';



class  Price extends Component  {
  state = {
    info: []
  };
  
  constructor(){
    super()
    axios.get(api)
    .then((res) =>{
      console.log(res.data)
      this.setState({
        info: res.data
      })
    })
  };

  createInfo = () …
Run Code Online (Sandbox Code Playgroud)

google-sheets cors google-apps-script reactjs axios

0
推荐指数
1
解决办法
2721
查看次数

根据单元格值自动删除选项卡

我找到了这个脚本:

function DELETESHEETS() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = ss.getSheets();
  for (i = 0; i < sheets.length; i++) {
     switch(sheets[i].getSheetName()) {
     case "Sheet1":
     case "Sheet2":
     case "Sheet3":
     break;
     default:
     ss.deleteSheet(sheets[i]);}}}
Run Code Online (Sandbox Code Playgroud)

这很完美,但如果单元格 A1 为“0”,我需要删除一个选项卡。有没有办法做到这一点?

javascript google-sheets google-apps-script

0
推荐指数
1
解决办法
169
查看次数

Google Sheet Script(电子邮件转PDF)突然发送损坏的PDF

我有一个 Google Sheet Script,它将页面作为 PDF 发送到电子邮件,直到昨天它一直运行良好。突然它开始发送无法打开的损坏的 PDF。

脚本运行得很好,如果只是无法打开 PDF 文件,因为它说“无法显示 - 格式无效”。

关于为什么它可能停止工作的任何想法?

function sendSheetToPdfwithA1MailAdress(){ // this is the function to call
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh = ss.getSheets()[0]; // it will send sheet 0 which is the first sheet in the spreadsheet.
  // if you change the number, change it also in the parameters below
  var shName = sh.getName()
    
  // This function uses a cell in the spreadsheet that names the file that is being saved as getfilename(). …
Run Code Online (Sandbox Code Playgroud)

pdf google-sheets google-apps-script

0
推荐指数
1
解决办法
1289
查看次数

在 Google 表格中上下移动行的快捷方式

当我Edit在网络浏览器的 Google Sheet 菜单中选择一行时,有一个很好的功能Move line upMove line down.

当我需要将一行向上或向下移动 10 行时,问题就出现了:我需要多次打开菜单......

是否可以分配键盘快捷键?我会大大简化事情。

google-sheets google-apps-script

0
推荐指数
1
解决办法
103
查看次数