gpt4 book ai didi

javascript - Google App Script 声明中的超链接已删除

转载 作者:行者123 更新时间:2023-11-28 03:11:37 28 4
gpt4 key购买 nike

我想要一些有关管理数组中超链接的建议

我有一个函数,可以将列数据从“数据”Google Sheet 电子表格传输到“Metrics”Google Sheet 电子表格。这已经足够好了。

但是,我正在传输的列包含一个超链接。

(=HYPERLINK("https://www.instagram.com/p/B5wVG5bn_6C/?igshid=1237ljejed19t ", "发布链接 #2655")

当值传输到指标表时,超链接将被删除。

是否可以通过删除超链接将此数据传输到其他电子表格?

这是我使用的函数。

感谢您的任何见解。

function Feed_Update_Test() {

var Metrics = SpreadsheetApp.openById("10Wl1B4AtdLHJXBbLbMQbSdtRyAb61biCWYpOQEEywIY");
var Data = SpreadsheetApp.getActiveSpreadsheet(); // FEED Spreadsheet

var FeedMetricSheet = Metrics.getSheetByName('Feature Metrics'); // Metrics Sheet
var FeedDataSheet = Data.getSheetByName("The Feed_Raw"); // Data Sheet

var FeedDataRange = FeedDataSheet.getRange(2, 1, FeedDataSheet.getLastRow()-1,1);

var FeedDataLastRow = FeedDataSheet.getLastRow();

var FeedMetricEmptyRange = FeedMetricSheet.getRange(2,1,FeedDataLastRow-1,1);

var FeedDataValues = FeedDataSheet.getRange(2,1,FeedDataLastRow-1,1).getValues();

FeedMetricEmptyRange.setValues(FeedDataValues);

}

最佳答案

  • 您希望使用 Google Apps 脚本将值复制到另一个电子表格,但不将公式从事件电子表格中删除。

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

修改后的脚本:

在这种情况下,包括值和公式的数据将被放入目标电子表格中。从你的问题的公式来看,我认为可以使用这个方法。当您的脚本修改时,请修改如下。

从:
var FeedDataValues = FeedDataSheet.getRange(2,1,FeedDataLastRow-1,1).getValues();
到:
var values = FeedDataRange.getValues();
var FeedDataValues = FeedDataRange.getFormulas().map(function([e], i) {return [e || values[i][0]]});

引用文献:

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

添加:

  • 来自 your replying , 问题。我如何修改此代码以包含 17 列而不是仅 1 列?

不幸的是,我无法从您的回复中理解17栏。例如,当您要检索“A1:Q”的单元格,即17列时,是否可以进行以下修改?

修改后的脚本:

从:
var FeedDataRange = FeedDataSheet.getRange(2, 1, FeedDataSheet.getLastRow()-1,1); 
var FeedDataLastRow = FeedDataSheet.getLastRow();
var FeedMetricEmptyRange = FeedMetricSheet.getRange(2,1,FeedDataLastRow-1,1);
var FeedDataValues = FeedDataSheet.getRange(2,1,FeedDataLastRow-1,1).getValues();
FeedMetricEmptyRange.setValues(FeedDataValues);
到:
var FeedDataRange = FeedDataSheet.getRange(2, 1, FeedDataSheet.getLastRow()-1, 17);
var values = FeedDataRange.getValues();
var FeedDataValues = FeedDataRange.getFormulas().map(function(e, i) {return e.map(function(f, j) {return f || values[i][j]})});
FeedMetricSheet.getRange(2, 1, FeedDataValues.length, FeedDataValues[0].length).setValues(FeedDataValues);

关于javascript - Google App Script 声明中的超链接已删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60049529/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com