このようなシートから
このような配列とオブジェクトを作ってみます
[{
hira = [あいうえお],
kana = [アイウエオ]
}, {
hira = [かきくけこ],
kana = [カキクケコ]
}, {
hira = [さしすせそ],
kana = [サシスセソ]
}]
コード.gs
function get_array() { var data = get_values(); var hiras = data[0]; var kanas = data[1]; var array = create_array(hiras, kanas); Logger.log(array); Logger.log(array[2]["hira"]); } function create_array(hiras, kanas) { var array = []; for (var i = 0; i < hiras.length; i++) { var obj = {} obj["hira"] = hiras[i]; obj["kana"] = kanas[i]; array.push(obj); } return array; } function get_values() { var ss_url = "SS_URL"; var ss = SpreadsheetApp.openByUrl(ss_url); var sheet = ss.getSheets()[0]; var last_row = sheet.getLastRow(); var hiras = sheet.getRange("A1:A" + last_row).getValues(); var kanas = sheet.getRange("B1:B" + last_row).getValues(); var data = [hiras, kanas]; return data; } |
意訳この機能がやること get_values()を実行して 返ってきた値の0番目のデータを取得し 返ってきた値の1番目のデータを取得し create_arrayに渡して 返ってきた配列をログに出す 返ってきた配列の2番目のhiraをログに出す この機能がやること 空の配列を用意する 受け取ったhirasの要素の数だけ以下を繰り返す オブジェクトを作って hirasの要素をひとつずつhiraに入れて kanasの要素をひとつずつkanaに入れて arrayに追加する すべてが追加されたarrayを返す この機能がやること スプレッドシートのURLを指定して 開いて 先頭のシートを取得して データが入っている最終行を取得して A列のデータを取得し B列のデータを取得し 配列に入れて 返す |
実行するとこのようなログが出ます
Logger.log(array[2]["hira"]);
のように配列からデータを取り出すと
[さしすせそ] が取得できています
array[0]["hira"] なら [あいうえお]
array[1]["kana"] なら [カキクケコ]
を取得できます