Tag: 谷歌应用程序脚本

谷歌电子表格条件格式化两个date和另一个值

我正在尝试有条件地格式化每个房间,以便它们在正常情况下是红色的,但是如果房间在特定的一天可用,则是绿色的。 感兴趣的date将在“办公房间”选项卡的左上angular更改。 “表单回复”标签中的值从Google表单填充。 值得考虑 : “表格回应”标签上的房间号码 “表单回复”选项卡上的date范围 “Office Rooms”标签顶部的date 我试过IF语句,我知道使用INDIRECT。 但是我认为这对于正常的“条件格式”路线可能太复杂了。 我可能需要使用Apps脚本,但我还不太熟悉。 我已经发布了一个链接到我正在下面的工作副本。 提前感谢您的帮助,你可以扔我的路! 链接到Google表格

getRange,getDataRange和getActiveRange之间的区别?

如果这个问题没有立即显现,那么我对Google Apps脚本来说是相当新的。 我正在尝试编写一个Spreadsheets函数,该函数在工作簿中的表单提交表的每一行中运行,并使用for循环根据第一个单元格的值更新第二个表单/范围(在同一个工作簿中)。 但是,当我运行该function时,什么都不会发生。 我很确定这个错误是在我如何定义有问题的范围,但我不是100%确定的。 这是我写的一个修改版本: function update() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var secondSheet = ss.getSheets()[1]; var submissionSheet = ss.getSheets()[0]; var secondRowEnd = secondSheet.getLastRow(); var submissionRowEnd = submissionSheet.getLastRow(); var secondColumnEnd = secondSheet.getLastColumn(); var submissionColumnEnd = submissionSheet.getLastColumn(); //used to define ranges dynamically var secondRange = secondSheet.getValues(); var submissionRange = submissionSheet.getValues(); for(var i = 2; i […]

通过电子表格值计算最常见的时间

初步 这个问题适用于任何电子表格系统。 我希望能够帮助解决问题,而不是回答问题。 (虽然后者将是最有用的。) 我理解堆栈溢出对于特定的编程问题是有好处的,而且我知道这可能需要我几次尝试才能正确地得到我的问题,所以请通过提供build议来帮助我澄清我的问题,并将对其进行更新。 像许多数据新手一样,我对于谨慎的数据(例如上个月有多less个查询)有很好的经验,但是我很难理解如何处理连续的数据(例如,如何发现模式以及查询的标准还不知道) 。 这个问题 我有一个电子表格,每一行代表一个“网站查询”。 有一个date时间专栏,我想发现这些数据中的模式,回答如下问题: 什么是最常见的时间来接受询问 接受询问的一周中最常见的一天是什么? 其他有用的信息,我可以从数据中收集,以便让我瞄准可能的客户 这与您经常在社交媒体分析中看到的function类似,比如“推特最佳时间”。 我明白,计算一周中最常见的一天是非常简单的,因为天是谨慎的对象。 所以我不需要帮助! 我想避免把这一天分成四个任意时间段(例如早餐,午餐,晚餐,夜间),并计算落入这些界限的行数。 如果这些时间段不是最好用来分割数据呢? 除了使用任意边界来量化数据之外,还有其他的方法吗?

发送电子邮件从单元格的谷歌表,与电子邮件中的其他列

道歉,因为我知道这已被问了几次,我从其他问题了解到,但我仍然卡住,不知道如何继续。 我试图让一个谷歌脚本发送一个电子邮件通知给更多的一个人,基于一个单元格的变化,也发送同一行中的多个单元格的电子邮件值? 例如,如果“C”列发生变化,我可以发送一封电子邮件,其中包含“C”列中“A”和“B”列中的数据。 这是我一直在试图玩的脚本,但不知道如何添加多个电子邮件,并从另外两个单元格的值。 function sendNotifications() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getActiveSheet(); var cell = ss.getActiveCell().getA1Notation(); var row = sheet.getActiveRange().getRow(); var cellvalue = ss.getActiveCell().getValue().toString(); var recipients = email@domain.com"; var message = ''; var cellA = '' if(cell.indexOf('B')!=-1){ message = sheet.getRange('A'+ sheet.getActiveCell().getRowIndex()).getValue() } var subject = 'Update to '+sheet.getName(); var body = + […]

Google脚本编辑电子表格的整个列?

我是新的谷歌脚本,所以我正在通过文档,希望find如何编写我需要的脚本。 到目前为止,我读到的所有东西都说它不能访问它自己的单元格之外的数据。 信息是在谷歌电子表格,如果Excel有一个更简单的解决scheme,我可以移动到。 我们的想法是,这个脚本会遍历大约1000个string的列,然后到行尾,然后向后走,删除每个字符,直到它传递第一个“ – ”,一旦发生,它将移动到下一行。 有人能指出我正确的方向吗? 谢谢

我们可以在Google电子表格中插入文本框/button,而无需使用像Excel插入对象那样的任何Google表单吗?

因为我们可以在excel中插入任何表单对象,就像在google电子表格中一样。我们可以插入文本框/buttondateselect器。 或者我们应该使用Google表单。 请确认任何人。 这会很棒。 提前致谢

使用JavaScript来生成包括公式和用户input的电子表格

使用Javascript,我想让用户下载或生成一个包含他们select的几个参数值的电子表格,以及使用这些参数执行计算的公式。 在他们生成/下载电子表格后,用户需要能够更改参数并可能自定义公式。 我已经看到,这可能是服务器端,但我认为这需要学习另一种新的语言(我正在学习代码只是为了这个项目),所以我怀疑这对我来说在不久的将来是不可行的。 到目前为止,我的解决scheme是将电子表格转换成分隔格式,然后将其编码成一个数组数组,这样当有人点击一个链接时,它就可以作为一个.csv文件下载。 不幸的是,我需要对公式进行一些频繁的更改,这是一个复杂的电子表格,它具有复杂的重复公式,因此find在哪里进行更改是非常繁琐的(为了说明问题,arrays的代码目前占用了19页当复制到MS Word,12pt TNR。) 所以有几个问题: 有一个更容易/更好的方式下载或生成公式和用户input的电子表格? 如果#1的答案是否定的,是否有办法在代码中分解数组,并且更容易查找/编辑单个单元格/值? 作为替代,我应该考虑切换到Google电子表格吗? 没有这样做,因为less数用户可能无法在工作中访问Google,但大多数人可以。 也许专业人员胜过负面? 有没有另外一个想法我没有考虑? 非常感谢任何build议或反馈!

使用脚本将Google Spreadsheet转换为Excel XLS

让我先说我意识到这个问题之前已经被问过了,真诚的道歉再次提出来。 但是,我已经尝试了一些build议,无法解决这个问题。 我正在尝试编写一个脚本,将其转换为Google Spreadsheet,将其转换为Excel XLS / XLSX格式,然后将转换后的文件作为附件发送给您。 这是试图创build转换后的文件的编码。 function googleOAuth_(name,scope) { var oAuthConfig = UrlFetchApp.addOAuthService(name); oAuthConfig.setRequestTokenUrl("https://www.google.com/accounts/OAuthGetRequestToken?scope="+scope); oAuthConfig.setAuthorizationUrl("https://www.google.com/accounts/OAuthAuthorizeToken"); oAuthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken"); oAuthConfig.setConsumerKey('anonymous'); oAuthConfig.setConsumerSecret('anonymous'); return {oAuthServiceName:name, oAuthUseToken:"always"}; } function test(){ var id = DocsList.getFileById('FILE_ID_HERE'); var url = 'https://docs.google.com/feeds/'; var doc = UrlFetchApp.fetch(url+'download/spreadsheets/Export?key='+id+'&exportFormat=xls', googleOAuth_('docs',url)).getBlob() DocsList.createFile(doc).rename('newfile.xls') } function autorise(){ // function to call to authorize googleOauth var id = SpreadsheetApp.getActiveSpreadsheet().getId() var […]

Google脚本从Google表格创buildExcel工作簿

我想运行一个Google脚本,它将扫描Google表单的列表并创build该Google表单的Excel电子表格副本… 那可能吗 ? Google电子表格中会列出Google表格,并附上Google表格参考。

使用Google脚本以ms Excel格式创buildGoogle表格的附件

是否可以使用Google脚本从Google工作表创buildExcel格式的文件,以便它可以作为附件添加到电子邮件中? 我有一个代码,采用某些名称(例如,A,C,F)的列,并将它们变成一个新的工作表(在createCustomStatusTable()函数)。 https://docs.google.com/spreadsheets/d/1fZ0JMYjoIrfPIxFBVgDNU0x5X0ll201ZCU-lcaTwwcI/edit?usp=sharing var expected = ['A','C','F']; var newSpreadSheet = SpreadsheetApp.getActiveSheet(); var tableLastRow = newSpreadSheet.getLastRow(); var tablelastColumn = newSpreadSheet.getLastColumn(); var values = newSpreadSheet.getRange(1, 1, tableLastRow, tablelastColumn).getValues(); var rangeToCopy = []; function in_array(value, array) { for(var i = 0; i < array.length; i++) { if(array[i] == value) return true; } return false;; }; function columnsCount() { […]