我想在google工作表中创建Google云端硬盘上我的文件的直接链接。我知道如何手动完成此操作。但是需要一个公式来提取一个URL的唯一ID并将其添加到另一个URL中。
我尝试使用= HYPERLINK(CONCATENATE和REGEXREPLACE(ImportXML),但我真的无处可去,并且不知道从哪里开始。
欢迎任何帮助。
答案 0 :(得分:0)
将这些脚本放入脚本编辑器中。一旦创建一个包含一个项目的菜单,就运行onOpen。现在返回到您的电子表格,确保文件名列表右侧有一个空白列,然后选择所有文件名和右侧的单元格。然后从“我的工具”菜单中选择“获取文件链接”。它会将文件ID放在所有选定文件的旁边。它今天运行缓慢所以请耐心等待。此外,如果其中一个文件导致错误,我没有错误恢复,所以你必须手动完成。我不会一次选择太多,因为有一个6分钟的脚本超时。
function onOpen()
{
SpreadsheetApp.getUi().createMenu('My Tools')
.addItem('Get Links to Files','testFind')
.addToUi();
}
function testFind()
{
var sht = SpreadsheetApp.getActiveSheet();
var rng = sht.getActiveRange();
var rngA = rng.getValues();
for(var i=0;i<rngA.length;i++)
{
rngA[i][1]=findFileByNameReturnId(rngA[i][0]);
}
rng.setValues(rngA);
}
function findFileByNameReturnId(name)
{
var rv = '';
var files = DriveApp.getFiles();
while (files.hasNext())
{
var file = files.next();
if(file.getName()==name)
{
rv = file.getId();
}
}