将文本添加到数组值的输出
Add text to the output of values of an array
我刚开始学习 Apps 脚本,我需要向数组的每个值添加一些文本。此代码只是将值放在另一列中:
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
sheet1.getRange('C1:C7').setValues(symbol);
}
我想在输出中添加一些文本,如下所示:
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
sheet1.getRange('C1:C7').setValues(
'=GOOGLEFINANCE("FRA:' + symbol + ")'
);
}
但我知道这行不通。如何添加到正在写入的每个值?
使用循环遍历值数组
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
var destRange = sheet1.getRange('C1:C7');
for (var i = 0; i < symbol.length; i++)
symbol[i][0] = '=GOOGLEFINANCE("FRA:' + symbol[i][0] + '")');
destRange.setFormulas(symbol);
}
由于范围 A1:A7
和 C1:C7
的宽度和高度相同,您可以使用该数组然后使用 setFormulas(array)
当然,如果您只使用一次 symbol
array 如果不是,则在循环之前声明一个空数组:
var resultArray = []
然后在你的 for 循环中执行:
resultArray.push(['=GOOGLEFINANCE("FRA:' + symbol[i][0] + '")']);
然后在for循环外使用setFormulas()
:
destRange.setFormulas(resultArray);
我刚开始学习 Apps 脚本,我需要向数组的每个值添加一些文本。此代码只是将值放在另一列中:
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
sheet1.getRange('C1:C7').setValues(symbol);
}
我想在输出中添加一些文本,如下所示:
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
sheet1.getRange('C1:C7').setValues(
'=GOOGLEFINANCE("FRA:' + symbol + ")'
);
}
但我知道这行不通。如何添加到正在写入的每个值?
使用循环遍历值数组
function getData() {
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Stocks");
var symbol = sheet1.getRange('A1:A7').getValues();
var destRange = sheet1.getRange('C1:C7');
for (var i = 0; i < symbol.length; i++)
symbol[i][0] = '=GOOGLEFINANCE("FRA:' + symbol[i][0] + '")');
destRange.setFormulas(symbol);
}
由于范围 A1:A7
和 C1:C7
的宽度和高度相同,您可以使用该数组然后使用 setFormulas(array)
当然,如果您只使用一次 symbol
array 如果不是,则在循环之前声明一个空数组:
var resultArray = []
然后在你的 for 循环中执行:
resultArray.push(['=GOOGLEFINANCE("FRA:' + symbol[i][0] + '")']);
然后在for循环外使用setFormulas()
:
destRange.setFormulas(resultArray);