Sco*_*tux 9 google-sheets google-apps-script google-spreadsheet-api
我正在使用SpreadsheetApp.getActiveRange().getValues(); 获取一系列单元格的值,但它不返回与该单元格关联的超链接,只返回文本.有没有办法获得超链接或我是否必须添加其他字段与其中的URL?
谢谢.
更新:这是我最终使用它来构建链接列表的方式.
<ul>
<?
var range = SpreadsheetApp.getActiveRange();
var data = range.getValues();
var links = range.getFormulas();
for(var i=1; i < data.length; i++){
if(data[i][0] !== ''){
?>
<li><a href="<?= links[i][0].split("\"")[1]; ?>"><?= data[i][0]; ?></a></li>
<?
}
}
?>
</ul>
Run Code Online (Sandbox Code Playgroud)
Aru*_*jan 11
与单元格文本关联的超链接由公式表示.Google Spreadsheets会自动将任何网址转换为可点击的超链接,但在这种情况下,不使用公式,文字和网址相同.
下面是一个非常简单的解决方案(无错误检查),了解如何通过脚本实现此目的.我怀疑你是从Excel或其他东西导入的,那你就不会看到HYPERLINK公式了.
如果你有一个看起来像这样的单元格 -

然后,此脚本将允许您读取与其关联的URL -
function getURL() {
var range = SpreadsheetApp.getActiveSheet().getActiveCell();
//logs - Google
Logger.log(range.getValue());
//logs - =HYPERLINK("http://www.google.com", "Google")
Logger.log(range.getFormulaR1C1());
//simple regex to get first quoted string
var url = /"(.*?)"/.exec(range.getFormulaR1C1())[1];
//logs - http://www.google.com
Logger.log(url);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8195 次 |
| 最近记录: |