使用 Google Apps 脚本将自定义超链接推送到 Google 表格
Pushing a custom hyperlink to Google Sheets with Google Apps Script
我正在寻找一种简单的方法,让我的代码将 link 从常规静态文本转换为可以单击的超级 link。该代码应允许您输入文本,然后代码会自动将其转换为 link,让您可以在 Google 涂鸦游戏、Image Breakout、旋转-关闭 Atari Breakout。
我做的第一件事就是尝试这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
array.push([url]);
return array;
}
那只给了我常规文本,并没有给我一个可点击的 link,所以我尝试了这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
array.push("<a href=url>" + url + "</a>");
return array;
}
但是,那只给了我格式为 HTML 的静态文本,这不起作用。所以,然后我尝试研究,然后继续尝试这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
SpreadsheetApp.getActiveSheet().getActiveCell().setFormula('=HYPERLINK("' + url + )');
}
但是它说我没有权限调用setFormula
。
我稍后尝试授权该应用程序,并且在编辑器中 运行 它时它起作用了,但是 运行 Google Sheets 中的公式给了我同样的错误。
我在这里很为难。有人可以帮助我,或者修改我的脚本以便它不需要那么多吗?如果那不可能,是否有一种我没有考虑过的更简单的方法来做到这一点?谢谢!
感谢@I'-'I,我发现我需要对 URI 进行编码,所以我的代码现在如下所示:
function IMAGEBREAKOUT(input)
{
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
return encodeURI([url]);
}
我正在寻找一种简单的方法,让我的代码将 link 从常规静态文本转换为可以单击的超级 link。该代码应允许您输入文本,然后代码会自动将其转换为 link,让您可以在 Google 涂鸦游戏、Image Breakout、旋转-关闭 Atari Breakout。
我做的第一件事就是尝试这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
array.push([url]);
return array;
}
那只给了我常规文本,并没有给我一个可点击的 link,所以我尝试了这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
array.push("<a href=url>" + url + "</a>");
return array;
}
但是,那只给了我格式为 HTML 的静态文本,这不起作用。所以,然后我尝试研究,然后继续尝试这个:
function IMAGEBREAKOUT(input)
{
var array = [];
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
SpreadsheetApp.getActiveSheet().getActiveCell().setFormula('=HYPERLINK("' + url + )');
}
但是它说我没有权限调用setFormula
。
我稍后尝试授权该应用程序,并且在编辑器中 运行 它时它起作用了,但是 运行 Google Sheets 中的公式给了我同样的错误。
我在这里很为难。有人可以帮助我,或者修改我的脚本以便它不需要那么多吗?如果那不可能,是否有一种我没有考虑过的更简单的方法来做到这一点?谢谢!
感谢@I'-'I,我发现我需要对 URI 进行编码,所以我的代码现在如下所示:
function IMAGEBREAKOUT(input)
{
var url = 'https://www.google.com/search?q=' + input + '&tbm=isch&tbs=boee:1';
return encodeURI([url]);
}