Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌网页隐藏网址_Javascript_Google Apps Script_Google Sheets_Google Sheets Formula - Fatal编程技术网

Javascript 谷歌网页隐藏网址

Javascript 谷歌网页隐藏网址,javascript,google-apps-script,google-sheets,google-sheets-formula,Javascript,Google Apps Script,Google Sheets,Google Sheets Formula,根据下面的截图,我有下面的Q88栏 我想应用公式,如果它是url,那么我希望它显示为www.q88.com 我知道如何使用IFURL验证url,但如果它是url,我不知道如何继续使用它,因此我想使用文本标签超链接,因为我对google工作表一点也不熟悉。请尝试 根据需要调整范围 使用的功能: 请试一试 根据需要调整范围 使用的功能: 说明: 这是answer的Google Apps脚本实现,所以如果这一个适合你,请接受他的答案 您只需要定义图纸名称和 列字母。我分别使用了Sheet1和H。 脚本

根据下面的截图,我有下面的Q88栏

我想应用公式,如果它是url,那么我希望它显示为www.q88.com

我知道如何使用IFURL验证url,但如果它是url,我不知道如何继续使用它,因此我想使用文本标签超链接,因为我对google工作表一点也不熟悉。

请尝试

根据需要调整范围

使用的功能:

请试一试

根据需要调整范围

使用的功能:

说明:

这是answer的Google Apps脚本实现,所以如果这一个适合你,请接受他的答案

您只需要定义图纸名称和 列字母。我分别使用了Sheet1和H。 脚本将替换/覆盖所选列中的每个值 本身或与愿望值匹配(如果与常规值匹配) 表示 解决方案1-常规功能:

解决方案2-onEdit触发功能:

说明:

这是answer的Google Apps脚本实现,所以如果这一个适合你,请接受他的答案

您只需要定义图纸名称和 列字母。我分别使用了Sheet1和H。 脚本将替换/覆盖所选列中的每个值 本身或与愿望值匹配(如果与常规值匹配) 表示 解决方案1-常规功能:

解决方案2-onEdit触发功能:



我不想创建新的列,我只想在同一个字段中应用它。如何在列中获得结果?我是说你用什么配方?请分享一些原始数据和公式。不用担心数据。我只是给你看一下,然后我会删除我已经删除的工作表。如果你想在同一专栏中看到www.q88.com,你需要一个脚本。如果您同意使用其他列,请在旁边的新列中使用我的公式。我不想创建新列,我只想在同一字段中应用它。如何在列中获得结果?我是说你用什么配方?请分享一些原始数据和公式。不用担心数据。我只是给你看一下,然后我会删除我已经删除的工作表。如果你想在同一专栏中看到www.q88.com,你需要一个脚本。如果你同意换一列,请在旁边的新列中使用我的公式。谢谢你的回答。但是脚本做的事情与我期望的不同。我的目标是转化https://www.example.com/id=123 到一个超链接,我会更新我的答案后,但你问的是非常简单的。您可以通过脚本将结果字符串传递到hyperilink公式和setFormula中。无论如何,如果你现在想要这个解决方案,我建议你尝试一下,使用谷歌脚本创建一个公式真的很简单。如果你能等5-7个小时,我会更新我的答案@谢谢Marios,我一点也不熟悉Google表单,但我会马上看一看。谢谢你的澄清。谢谢,我会尝试一下,如果我这么做了,我会让你知道:P@Marios非常感谢您的澄清,并花时间为我解释。我真的很感激。关于触发器,我刚刚应用了它,使您可以轻松地直接查看输出,而无需运行脚本。再次感谢你的回答。但是脚本做的事情与我期望的不同。我的目标是转化https://www.example.com/id=123 到一个超链接,我会更新我的答案后,但你问的是非常简单的。您可以通过脚本将结果字符串传递到hyperilink公式和setFormula中。无论如何,如果你现在想要这个解决方案,我建议你尝试一下,使用谷歌脚本创建一个公式真的很简单。如果你能等5-7个小时,我会更新我的答案@谢谢Marios,我一点也不熟悉Google表单,但我会马上看一看。谢谢你的澄清。谢谢,我会尝试一下,如果我这么做了,我会让你知道:P@Marios非常感谢您的澄清,并花时间为我解释。我真的很感激。关于触发器,我刚刚应用了它,使您可以轻松地直接查看输出,而无需运行脚本。再次感谢
=ArrayFormula(IFERROR(REGEXEXTRACT(O1:O,"//(.*)/"),O1:O))
function myFunction() {
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheets()[0]; 
  const rng = sh.getRange('H1:H'+sh.getLastRow());
  const vals = rng.getValues().flat();
  const fvals=vals.map(v=>v.match("//(.*)/")?[`=HYPERLINK("${v}","${v.match("//(.*)/")[1]}")`]:[v])
  rng.clearContent();
  rng.setValues(fvals); 
}
function onEdit(e){
  const row = e.range.getRow();
  const col = e.range.getColumn();
  const as = e.source.getActiveSheet();
  if(as.getName() == "Sheet1" && col == 8){
  const v = e.value;
  const fv = v.match("//(.*)/")?`=HYPERLINK("${v}","${v.match("//(.*)/")[1]}")`:v;
  e.range.setValue(fv);
}
}