OfficeScriptsで名言ボットを作ってみた⑭ return文で戻り値を指定する🙂
こんにちは。aliceです。
OfficeScripts初心者が名言ボットを作ってみたシリーズ。はじめてのOfficeScripts。
今日はreturn文で戻り値を指定してみたいと思います。
OfficeScriptsとPowerAutomateで名言ボットを作りました。(OfficeScriptsの使用にはweb版のExcelとライセンスが必要です。)
前回のあらすじ
break文でループを抜けてみました。
function main(workbook: ExcelScript.Workbook) {
let sheet = workbook.getActiveWorksheet();
let range = sheet.getUsedRange();
let rangeValues = range.getValues();
let word = "";
let lastRow = range.getRowCount();
for (let i = 1; i <= lastRow; i++) {
if (rangeValues[i][3] === "") {
word = "" + rangeValues[i][1];
sheet.getCell(i, 3).setValue("True");
if (i >= lastRow - 1) {
let address = "D2:D" + lastRow;
sheet.getRange(address).clear(ExcelScript.ClearApplyTo.contents);
};
break;
}
}
}
これでセリフを取得できたのですが、取得したセリフをPowerAutomateに渡すため、return文を使います。
1 return文
return文を使ってこの関数mainの結果を出力します。
return word;
また、戻り値は文字列なので文字列型で定義しています。
function main(workbook: ExcelScript.Workbook) :string{
こんな感じになりました。
function main(workbook: ExcelScript.Workbook): string {
let sheet = workbook.getActiveWorksheet();
let range = sheet.getUsedRange();
let rangeValues = range.getValues();
let word = "";
let lastRow = range.getRowCount();
for (let i = 1; i <= lastRow; i++) {
if (rangeValues[i][3] === "") {
word = "" + rangeValues[i][1];
sheet.getCell(i, 3).setValue("True");
if (i >= lastRow - 1) {
let address = "D2:D" + lastRow;
sheet.getRange(address).clear(ExcelScript.ClearApplyTo.contents);
};
break;
}
}
return word;
}
ということで実行。
エラーが出ていないので大丈夫かな?
次回、これをPowerAutomateで実行してみます!
2 今日のまとめ
戻り値を指定するときはreturn文を使う。
3 おすすめサイト
お疲れさまでした。