我已经在Google Scripts上工作了一段时间,但我似乎找不到解决我的问题的方法。我要做的是用我的calculateRates()函数将电子表格中两个单元格的内容相乘。下面是我的代码:
/**
@customFunction
*/
function calculateRates(hourDecimal, personRate) {
var ss = SpreadsheetApp.getActiveSpreadsheet(); //Access spreadsheet
var sheet = ss.getSheets()[0]; //Access sheet
var ra
我有一个格式化日期的单元格,并设置为:“星期六,2019年11月2日”。
但是当我用脚本查找单元格的日期时,它只差了一天(-1)。
var date = new Date();
date = sheet_log.getRange(110, 1).getValue();
var dateDisplay = sheet_log.getRange(110, 1).getDisplayValue();
// date = Fri Nov 01 2019 18:00:00 GMT-0600 (CST)
// dateDisplay = Sat, Nov 2, 2019
为什么Google Sheets让
这是我第一次使用Google Script编程,我不知道如何添加一个函数来绕过Google的处理时间超时的错误消息。你能帮帮忙吗?
该程序获取订购的金条和品脱的数量,并将它们引用到另一个工作表中,该工作表具有计算器来计算成本并输出价值。会非常感谢你的帮助
/**
*
*
*/
function STBIBOL()
{
var r = 6
var destclm = 11
var pintsclm = 105
var barsclm = 101
var spreadsheet_url = 'https://docs.google.com/spreadsh
我有两个脚本。一个链接到Google表单,另一个链接到Google sheets。我需要确保Google表单脚本在执行链接到Google表单的工作表的Google sheet脚本的主体之前完成执行。如何做到这一点呢? 需要等待Google表单脚本完成,如下面的代码所示。我不能使用Utilities.sleep,因为它可能会导致竞争条件,这取决于执行的时间。 //SCRIPT LINKED TO FORM
function onFormSubmit(e) {
//does something
return;
} //SCRIPT LINKED TO SHEET
function onFor
当将数据导入Google时,我很难让时区很好地处理自定义工作表扩展。
似乎有时时区之间会出现不匹配,从而导致不正确的行为。
下面是我的代码,可以尝试组合一些日期数据列,以显示格式正确的日期:
activeSheetTimeZone = Session.getScriptTimeZone();
//Merge dates into start and end only
var range1 = sheet.getRange(2,shiftDayIndex,sheet.getLastRow()-1,1).getValues().map(date => Utilities.
Google sheets没有找到替换的函数。我的代码出了什么问题?
错误消息为:
function uptimeCheck() {
var ss = SpreadsheetApp.openById("XXXX");
var sheet = ss.getSheetByName('Tabellenblatt1');
var uptime_string = sheet.getRange("E5").getValue();
var uptime_zahl = uptime_string.replace(",", "
在我的谷歌表单单元格A3中,有一个持续时间值00:01:00
然后我在Google Sheets中访问这个值...
var my_time = my_sheet.getRange("A3").getValue();
var hms = Utilities.formatDate(my_time ,"GMT", "HH:mm:ss");
当我比较这两个变量时,我不能得到两个变量中相同的持续时间。相反我有..。
my_time | Date (1473042018) | Sat Dec 30 1899 00:01:00 GMT+0100 (CET)
我找到了一个脚本(在这个帖子:我需要以一种简单的方式隐藏/显示Google工作表中的一组列上),它添加了一个下拉菜单,其中有两个选项:显示列的范围X&隐藏列的范围X。这个脚本工作得很好,只是我无法为不同的列范围添加更多的菜单选项。
我尝试过修改代码(见下文)。目前,“显示/隐藏列”下拉菜单显示两个选项:“显示UTH”和“隐藏UTH",但是忽略了"Show Viz”和“隐藏Viz”选项。对于如何修改代码有什么建议,这样我就可以在菜单中添加多个显示和隐藏按钮,从而影响不同的列范围?我对谷歌脚本非常陌生,所以我希望有一些非常简单的东西,我忽略了。
function onOpe
我的SQL Server 2016数据库正在使用排序规则SQL_Latin1_General_CP1_CI_AS。当我运行这个查询时...
select distinct x from (
select '²' as x
union all
select '2'
) y
select distinct x from (
select N'²' as x
union all
select N'2'
) y
VARCHAR版本将这两个字符视为不同;NVARCHAR版本将它们视为相同。
这到底是怎么回事?
我有一个问题,可能是因为我对getRange()函数的工作原理缺乏理解。
我写了两个小函数在Google工作表中使用,但是我不能让单元格引用作为输入正常工作。代码如下:
function getCellRGB(input, color) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var cell = sheet.getRange(input);
var hex = cell.getBackground();
hex = hex.replace('
因此,我有两个时间表,它们在行和列以及单元格的位置上是相同的。有些单元格总是不变的,但也有一些单元格的字段会发生变化。因此,我有一个自定义菜单脚本,它将调用两个相同的床单之一,并清除预定义的单元格。在脚本方面,基本上我只复制/粘贴了两次相同的脚本,并更改了活动表名称。不过,我觉得这太多余了。有没有一种方法,我可以只有一个脚本,并根据我选择的菜单项,它将擦除适当的时间表?
这是自定义菜单脚本
function resetsheetbutton() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('Advanced Menu
我正在尝试逐行比较两个单独的工作表,并在第三个工作表上显示不相等的行。例如,Sheet1上的第三行和第五行不同于Sheet2,我只想在Sheet3上显示它们。
SHEET1 SHEET2
A B C A B C
1 INT STR BOOL 1 INT STR BOOL
2 1 A TRUE 2 1 A TRUE
3 2 B FALSE 3 2 B TRUE
4 3
所以我试图在Google单子上做一个登录/注册表单,我有两个复选框,一个是登录,另一个是注册。在我的应用程序脚本中,我试图使它成为只有其中一个可以检查。这是我的代码,但不起作用。帮助?
function signupLogin() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
if (sheet.getRange('A13').isChecked() === 'TRUE') {
sheet.getRange('B13
在我的AppScript代码中,我有以下代码,它以JSON格式返回完美的列d和e
fileID = "xxxxxxvxjRD_kjE7gzYE3WAcGdxaQEEQNReY"
sheetName = "Data"
function doGet(e) {
// Logger.log(e.parameter.method);
// Open Google Sheet using ID
var ss = SpreadsheetApp.openById(fileID);
var sheet = ss.getSheetByName(sheetName);
我正在遍历一个电子表格(特别是google ),它返回一个字典列表。
我可以通过.
sheet = client.open('test').sheet1
list = sheet.get_all_records()
for row in list:
在每个字典中,我需要运行一个函数来检查特定的键是否是空的,如果是的话,它会返回包含空键的字典。我可以用.
for row in list:
if bool(row['name']) == False:
print(row)
我的问题是,如何检查是否有任何字典有键'name‘空,如果没有dic
首先,我要感谢在座的每一个人。多年来,我仅根据Stack Overflow上的Q&A就破解了一些javascript。非常感谢。
现在我第一次尝试Google Apps脚本,我的尝试导致了一些不想要的行为。
function sortFormResponses1() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Projects");
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("
我正在尝试导入一个CSV的大约。从GMail附件到Google的7500行代码,执行时间要比允许的6分钟长。
我正在遵循本教程:和我的代码列在下面
一直在消耗数据的部分是将数据推入新的工作表:
// Push data into the sheet
for ( var n=0, lenCsv=csvData.length; n<lenCsv; n++ ) {
newsheet.getRange(n+1, 1, 1, csvData[n].length).setValues(new Array(csvData[n]));
}
有什么方法可以提高它的性能并使它更快吗?
我正在尝试使用第二个google工作表中的数据来更新google工作表。
“主题表”包含每个选修某一科目的学生的列表,“教师表”包含特定教师班级中该科目的学生列表。
主题标题将在主题页上添加栏目,以记录考试分数的值。
一旦这些标题被添加,我的脚本需要用相同的标题更新教师表。
此外,教师工作表中任何不存在于主题工作表中的学生行都将添加到主题工作表的末尾。学生由名为"UPN“的列中的值标识。
在运行比较之前,我确保两个表具有相同的列数,如下所示:
//ensure every row in teacherArray has (at least) the same number of col
我无法让它工作,我迷路了,我搜索并搜索了一个答案,我看不出是什么导致了失败,我正在从电子表格中提取数据,并试图将作为事件添加到google日历-冻结在getcal()事件,说找不到方法createalldayevent事件(字符串,字符串)-line71。
我已经修改了密码,但还是.
\\function to get required information from sheets
and set as script properties to use in later functions//
function getsheet(getsheet){
var ss = Spreads
我正在尝试并行计算数字,并将它们放入google电子表格的单元格中。以下是我的代码: import multiprocessing, ezsheets
ss = ezsheets.Spreadsheet(spreadsheet_url)
sheet2 = ss[1]
def myfunc(inputs):
a = sum(inputs)
sheet2['A1']=a
return
processes = []
for i in range(1,5):
p = multiprocessing.Process(target=myfunc, a