将超链接添加到 Google 幻灯片演示文稿中的 table 单元格

Add hyperlink to a table cell within a Google Slides presentation

在我的 Google 幻灯片中,我有一个 table。 table 每 15 分钟更新一次。我在这个 table 中有一些单元格,我想包括 hyperlinks。我试图通过突出显示单元格中的文本并右键单击,选择 "link" 来手动输入 hyperlink。但是当 table 更新时,hyperlinks 被删除。我在脚本中尝试了 setText() 和 insertText(),都删除了 links。

我也研究过在更新完成后自动重新添加 link,但是幻灯片 table 没有 insertLink 命令。此外,由于此 table 实际上不是 Google 电子表格,因此没有 setFormula() 命令。

这是我目前用来更新 table 的内容。有效,只需要在文本中添加 hyperlinks。

仅供参考,links 将发送到 Google 驱动器中的其他文件,如果这很重要...

var slide = SlidesApp.getActivePresentation().getSlides()[slideNo];
var table = slide.getTables();
var cell = table[0].getCell(row,4);
var trafficTime = convertTime(res["routes"][0]["summary"]["travelTimeInSeconds"]);
var trafficDelay = Math.round(res["routes"][0]["summary"]["trafficDelayInSeconds"]/60);  
var displayedTime = trafficTime + " +" + trafficDelay; 

cell.getText().clear();
cell.getText().insertText(0,displayedTime);
  • 您想在 Google 幻灯片的 table 单元格文本中添加超链接。
  • 您想使用 Google Apps 脚本实现此目的。

如果我的理解是正确的,这个修改怎么样?请将此视为几个可能的答案之一。

修改点:

  • 在您的情况下,可以使用从 insertText 返回的 TextRange。为此,可以使用getTextStyle().setLinkUrl(URL).
  • 的方法

修改后的脚本:

当您的脚本修改时,请修改如下。

从:
cell.getText().insertText(0,displayedTime);
到:
var textRange = cell.getText().insertText(0,displayedTime);
textRange.getTextStyle().setLinkUrl(url);

cell.getText().insertText(0,displayedTime).getTextStyle().setLinkUrl(url);
  • 在这种情况下,url 是一个字符串类型,如 https://###sample###/

参考文献:

如果我误解了您的问题并且这不是您想要的方向,我深表歉意。