Google Apps 脚本将事件从一个日历移动到另一个日历

2024-01-01

我在看莫格达德回答类似的问题here https://stackoverflow.com/a/17557536/1986871,但这对于我的问题来说并不是非常具体。我也看过Calendar 类及其子类的文档 https://developers.google.com/apps-script/reference/calendar/,但是没有方法(我认为应该实现;有一个待定的)用于复制single从日历 X 到日历 Y 的事件。

我想做的如下:

  1. 将要移动的日历事件的 ID 存储在某处。
  2. 当事件 Z 完成时(外部标准,not基于时间),为函数提供日历事件 ID。
  3. 该函数会将事件 Z 从日历 X 移动到日历 Y。

我能想到的唯一方法是草率(下面是半伪的):

// y is Calendar Y, z is the ID of Event Z
function moveToNewCalendar(y, z) {

var eventToMove = getEventByID(z);

// eventDetails is an Object
var eventDetails = getAllEventDetails(eventToMove); // This is not fun!

y.createEvent(eventDetails);
eventToMove.deleteEvent();
}

function getAllEventDetails(e) {

var details = {};

details["title"] = e.getTitle();
details["startTime"] = e.getStartTime();
// ... etc

return details;

}

function createEvent(eventDetails) {
// Create event using the information pulled from eventDetails
}

此功能可通过Google 日历 API v3 - 移动 https://developers.google.com/google-apps/calendar/v3/reference/events/move函数,但不是通过 GAS。

我认为主要问题是复制事件的详细信息。没有功能可以createEvent(Event e)在日历原型中。有没有一种更简单的方法来做到这一点,我只是想念?


This 新图书馆 https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/calendar由 Romain Vialard 编写的将为您提供完整的解决方案...我很高兴成为 Beta 测试员,并且我所有的测试都成功了:-)

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

Google Apps 脚本将事件从一个日历移动到另一个日历 的相关文章

  • 如何使用 Google Sheets onEdit() 触发器运行函数来更新 Google Form

    我有一个 Google 表格工作簿 其中有一个工作表 我想用它来保存工作簿和 Google 表单的设置 我做了一个定制onEdit 触发两个函数的函数 一个用于更新工作簿 另一个用于更新表单 function onEdit e var ra
  • HTML 表单未运行 (withSuccessHandler) 函数

    我在 Google App Script Sheets 中有一个 HTML 表单 它要求用户提供日期值 然后提交该值 HTML 表单运行 唯一的问题是 obj 不记录 我不明白这是为什么 HTML
  • 将 Google 日历同步到我的 Android 应用程序

    我在 Android 中制作了一个 GUI 应用程序 我想与 Google 日历同步 这怎么可能做到呢 Google 为其服务提供了详细记录的 API 您可以在此处找到日历 API http code google com apis cal
  • 根据单元格值隐藏列

    在我的谷歌电子表格 A 中 我使用 TRANSPOSE 和 IMPORTRANGE 公式的组合从日历电子表格 B 导入数据 以便填写事件的工作时间表 因为每个日期都有 3 个事件空位 但这些空位并不总是被填满 所以我收到了很多过时的列 表格
  • Google Apps 脚本:连接日期和时间

    更新 要使用 AppsScript 创建 Google 日历事件 我们可以使用以下简单方法createEvent eventName startTime endTime 我已经使用过这个并且没有任何问题 但我使用的唯一日期格式是谷歌表格中的
  • 将按钮添加到 Google 表格并在单击时为单元格设置值

    我是 Google 脚本的新手 我有一个包含 5 列的 Google 表格 在每一列上我需要一个按钮 带有文本1 2 3 4 5 在每个按钮上单击我需要将按钮文本设置为相应的单元格并隐藏单击的按钮 是否可以 您可以插入看起来像按钮的图像 然
  • 如何使用基于时间的触发器每小时运行一个脚本,仅在工作日的整点运行?

    我只需要在工作日每小时运行一个 Google App Script 脚本 两者之一似乎很容易做到 但将其结合起来我不确定 每小时触发 ScriptApp newTrigger RefreshRates timeBased inTimezon
  • 自动递增 ID 号 Google Apps 脚本

    我想在向工作表添加新值时自动增加 ID 我尝试从当前的 ID 列表创建一个列表 但它只计数到 5 因此当自动递增时 它只会到达一个点并为每个输入保存该数字 以下是我尝试获取 ID 号列表的方法 但它没有获取整个列表 我缺少什么 var ss
  • 谷歌日历手表过期时间超过1个月怎么办?

    我将我的 CRM 系统与 Google 日历同步 为此 我要求push notifications从我的用户 Google 日历到我的系统 我已经成功创建了手表 并将过期时间设置为2030年 但是当我收到手表事件的响应时 它显示手表的过期时
  • ArrayFormula 破坏了 getLastRow() 函数。可能的解决方法?

    在我的电子表格中 我有一个正在运行的脚本 它使用getLastRow 功能是其逻辑的重要组成部分 自从我在其中一列中应用数组公式以来 getLastRow 功能无法正常工作 即使其他列中没有其他值 数组公式似乎也一直 应用 到工作表的底部
  • Google Apps 脚本 - 是否可以仅通过 Google Apps 脚本更改表格中的某些单元格?

    我在 Google SpreadSheet 中制作了一个目录 我的电子表格有一个表格 用户可以在其中添加信息 该表是通过从数据库表获取数据的脚本动态创建的 用户可以编辑表中的某些单元格 然后单击按钮将更改保存回数据库表中 我想限制他可以手动
  • 有没有办法导入/导出容器绑定脚本

    我有一个插件 它使用 appscripts gs 以及 html js 和 css 文件 目前我们所做的是我们有一个参考 Google 文档 其中有一个脚本项目包含所有这些源代码 但是除了手动复制和粘贴之外 没有办法在 GIT 中保留源代码
  • 您可以在不是在 Google 协作平台下创建的网站上使用 Google 脚本吗? [复制]

    这个问题在这里已经有答案了 Google 脚本有一种方法可以嵌入到 Google 网站中 但我想知道是否可以在非 Google 托管的网站上使用 Google 脚本 此 google 脚本的目的是作为 Javascript 的简单替代方案
  • 谷歌表格在一行上的不同单元格范围上添加时间戳

    我一直试图在与该行上两个不同单元格范围相对应的行上放置两个时间戳 我已成功使用此脚本对行上的任何更改 第 5 列之后 添加时间戳 我想要的是 如果单元格范围 F 到 L 发生任何更改 则在 E 列中放置一个时间戳 然后 如果从 N 列到 Z
  • 重命名带有“完整工作表”图表的工作表会导致电子表格重新加载

    Google 表格允许将图表移动到自己的表格中 不过 谷歌脚本似乎无法重命名这些工作表 而不会使电子表格崩溃并强制其重新加载 要明白我的意思 请尝试以下操作 1 创建新的电子表格并在其中放入一些数据 2 使用数据创建任何类型的图表 3 编辑
  • 使用服务帐户插入 Google 日历条目

    我正在尝试使用服务帐户在 Google 日历上创建条目 我真的很接近这一点 但最后一行行不通 我得到一个500 Internal Service Error当我让它运行时 否则 程序运行时不会出错 无论其价值如何 The Calendar
  • Google Apps 脚本中 $.ajax() 的服务器端等效项是什么?

    我想在 Google App 脚本中从服务器端代码执行 HTTP 请求Authorization标头 是否有用于发送 HTTP 请求的 App Script API Google Apps 脚本中的这段代码相当于什么 var api URL
  • 脚本在 SpreadsheetApp.openById 上失败 - 需要权限

    我有一个 onOpen 函数 可以在电子表格中创建自定义菜单 它已经工作了一年多 但几天前它停止工作了 当我查看执行记录时 我得到 执行失败 您无权调用 SpreadsheetApp openById 所需权限 https www goog
  • 移动设备:缺少操作

    我正在尝试执行该操作的 POST 但是 当我发出请求时 我收到代码 400 表示操作值丢失 my code function mobileAPIPOST var response UrlFetchApp fetch https www go
  • Google 文档有内容控制吗?

    我对 Google 文档和内容控制有疑问 如果有的话 我们有一个系统 允许用户设计带有内容控件 rtf 文本 组合框等 的 MS Word 文档 并为控件分配一个 ID 以便我们的系统可以提取 ID 并注册答案 然后数据被保存在数据库中 什

随机推荐