Javascript 在Google应用程序脚本声明中删除超链接
我想要一些关于在数组中管理超链接的建议 我有一个功能,可以将列数据从我的“数据”谷歌工作表电子表格传输到我的“度量”谷歌工作表电子表格。这很有效 但是,我正在传输的列包含一个超链接 (=超链接(“,“帖子链接#2655”) 将值传输到度量表时,超链接将被剥离 是否仍然可以通过删除超链接将此数据传输到其他电子表格 这里是我正在使用的函数 感谢你的洞察力Javascript 在Google应用程序脚本声明中删除超链接,javascript,google-apps-script,google-sheets,hyperlink,spreadsheet,Javascript,Google Apps Script,Google Sheets,Hyperlink,Spreadsheet,我想要一些关于在数组中管理超链接的建议 我有一个功能,可以将列数据从我的“数据”谷歌工作表电子表格传输到我的“度量”谷歌工作表电子表格。这很有效 但是,我正在传输的列包含一个超链接 (=超链接(“,“帖子链接#2655”) 将值传输到度量表时,超链接将被剥离 是否仍然可以通过删除超链接将此数据传输到其他电子表格 这里是我正在使用的函数 感谢你的洞察力 function Feed_Update_Test() { var Metrics = SpreadsheetApp.openById("1
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脚本将值复制到另一个电子表格,而不将公式从活动电子表格中删除
- 从,
问题。如何修改此代码以包含17列而不是一列?
17列
。因此,例如,当您想要检索“A1:Q”的单元格,即17列时,下面的修改如何
修改脚本:
发件人:
致:
- 您希望使用Google Apps脚本将值复制到另一个电子表格,而不将公式从活动电子表格中删除
- 从,
问题。如何修改此代码以包含17列而不是一列?
17列
。因此,例如,当您想要检索“A1:Q”的单元格,即17列时,下面的修改如何
修改脚本:
发件人:
致:
这是一个公式。你需要阅读公式,而不仅仅是值。考虑还使用<代码>范围>拷贝> <代码>。谢谢快速响应。让我给你一个镜头,让你知道我有一个错误:“执行失败:目标范围和源范围必须在同一个电子表格上。”我不能用这个吗?Copyto把数据传送到一个不同的电子表格?这是一个公式。你需要阅读公式,而不仅仅是值。考虑也使用<代码>范围>拷贝> <代码>。谢谢你的快速响应。“执行失败:目标范围和源范围必须在同一个电子表格上。"我可以不使用此.copyTo将数据传输到其他电子表格吗?问题。我如何修改此代码以包含17列而不是一列?@Neo感谢您的回答。对于我的回答不完整,我深表歉意。关于您的其他问题,我又添加了一个示例脚本。您能确认吗?如果我误解了您的问题,并且at不是您想要的方向,我道歉。这对我很有用。非常感谢!我真的很感谢您的帮助!@Neo感谢您的回复。我很高兴您的问题得到解决。问题。我如何修改此代码以包括17列而不是一列?@Neo感谢您的回复。我为我的回答不完整道歉。关于您的额外问题stion,我又添加了一个示例脚本。你能确认一下吗?如果我误解了你的问题,而这不是你想要的方向,我道歉。这对我很有用。非常感谢!我真的很感谢你的帮助!@Neo感谢你的回复。我很高兴你的问题得到了解决。
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]]});
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);