Google apps script 在google文档中插入日期时间
我想在Google文档中插入一个时间戳(日期和/或时间)。支持文档()说应该有一个键盘快捷键,但它在我的环境(Win7+IE9)中不起作用Google apps script 在google文档中插入日期时间,google-apps-script,timestamp,google-docs,Google Apps Script,Timestamp,Google Docs,我想在Google文档中插入一个时间戳(日期和/或时间)。支持文档()说应该有一个键盘快捷键,但它在我的环境(Win7+IE9)中不起作用 有人能为我提供一个谷歌应用程序脚本来实现这一点吗?对于文档来说,你可能运气不好,看起来是这样,而且缺乏对文档内部脚本的支持(电子表格将是另一回事)。不过,既然你在Windows上,你可以利用它,虽然太长,但显示了分配全局热键组合以在任意位置插入当前日期。这样,在使用Windows系统时,您就可以将日期/时间插入任意位置。(您可以自定义它,使其仅在某些应用程序
有人能为我提供一个谷歌应用程序脚本来实现这一点吗?对于文档来说,你可能运气不好,看起来是这样,而且缺乏对文档内部脚本的支持(电子表格将是另一回事)。不过,既然你在Windows上,你可以利用它,虽然太长,但显示了分配全局热键组合以在任意位置插入当前日期。这样,在使用Windows系统时,您就可以将日期/时间插入任意位置。(您可以自定义它,使其仅在某些应用程序(如IE)中处于活动状态,如果您想使用它变得古怪)尝试以下方法:
函数insertTimestamp(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var cell=ss.getActiveCell();
cell.setValue(新日期());
//将单元格格式设置为月/日/年。
//如果您也希望插入时间,请删除
cell.setNumberFormat(“MM/dd/yyyy”)
}
这适用于电子表格,但不确定您是否正在寻找其他文档。今天在谷歌文档中创建电子表格。将日期放在B1中作为今天()使用函数文本(B1,“dddd,mmmm d,yyyy”)将其格式化为C1 然后使用以下脚本(您需要今天电子表格的url
函数myFunction(){
var doc=DocumentApp.getActiveDocument();
var body1=doc.getBody();
var style1={};
style1[DocumentApp.Attribute.BOLD]=true;
var text1=doc.editAsText();
正文1.附录水平规则();
var wb=SpreadsheetApp.openByUrl(“电子表格url”);
var ss=wb.getSheetByName('Today');
var r=ss.getRange('C1');
var date1=r.getValues();
var par1=body1.附录段落(日期1[0]);
par1.setAttributes(style1);
}
这很有效
在Google文档中:工具->打开脚本编辑器并保存此脚本
函数onOpen(){
var ui=DocumentApp.getUi();
//或FormApp或电子表格应用程序。
ui.createMenu(“自定义菜单”)
.addItem('插入日期','插入日期')
.addToUi();
}
函数insertDate(){
var cursor=DocumentApp.getActiveDocument().getCursor();
如果(光标){
//尝试在光标位置插入文本。如果插入返回null,
//然后光标的包含元素不允许插入文本。
var d=新日期();
var dd=d.getDate();
dd=焊盘(dd,2)
var mm=d.getMonth()+1;//月份以零为基础
毫米=衬垫(毫米,2)
变量yyyy=d.getFullYear();
变量日期=dd+“-”+mm+“-”+yyyy;
var元素=cursor.insertText(日期);
if(元素){
元素。setBold(true);
}否则{
DocumentApp.getUi().alert('无法在此光标位置插入文本');
}
}否则{
DocumentApp.getUi().alert('在文档中找不到光标');
}
}
功能板(str,最大值){
str=str.toString();
返回str.length@ECHO OFF
for /f "tokens=1-12 delims=/:. " %%d in ("%time%") do SET MYTIME= %%d:%%e:%%f
for /f "tokens=1-12 delims=/:. " %%d in ("%date%") do SET MYDATE= %%g-%%e-%%f
SET MYTS=%MYDATE%%MYTIME%
ECHO | SET /p dummyname=%MYTS%|clip
这对我来说很有用,直到GDocs提供了一个可嵌入的功能,每次打开文档时都会将显示日期更新为当前日期。在MacOS上,我使用Automator 我创建了一个与Chrome配合使用的服务,不接受任何输入,运行shell脚本并将输出发送到剪贴板。shell脚本非常基本:
DateTime=`date "+%Y-%m-%d %H:%M"`
echo $DateTime
我本可以不使用中间变量,只运行date命令,但我有一个想法,可能需要进行额外的处理和格式化。请注意,如果要在日期字符串的格式化中包含空格,格式化参数必须在引号中。屏幕截图使用了下划线
保存脚本后,我进入系统设置>键盘>快捷键,在文本部分找到脚本DateTime2CB.workflow,并给它一个热键