GAS スプレッドシート フォームからインプットされたデータをシートの名前変更に反映させる関数を教えてください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
質問のやりたいことは、下記のスクリプトで実行できます。
(スプレッドシートに付属するスクリプトで試してください)
どうか、このスクリプトを貰ったで済まさず、
途中途中のログをみながら、どのコードが何をしているのか読み解いて
これをGoogleAppsScriptの勉強のきっかけにしてください。
たとえば「google script スプレッドシート タブの名前 変更」で
Google検索すると、先人が教えてくれるサイトがHitします。
私もそうやってスクリプトの知識を1つ1つ増やしてきたのです。
(javascriptについての知識ほとんどなしでgoogle apps scriptを勉強し始めたのは半年前くらいからですので)
function myFunction() { var Sp = SpreadsheetApp.getActiveSpreadsheet();//変数宣言の上、アクティブスプレッドシート指定でオブジェクト代入 var Sh = Sp.getActiveSheet();//変数宣言の上、アクティブシートオブジェクト代入 var nameData = [];//配列変数の宣言 var lastRow = Sh.getLastRow();//データの入っている最終行数の取得 Logger.log('最終行数:' + lastRow);//ログ出力(表示→ログにて実行後見られる) for (var i = 0 ; i<lastRow ; i++){//行数分繰り返し処理 Logger.log('A' + (i+1) + 'の内容:' + Sh.getRange(i+1, 1).getValue()) nameData.push(Sh.getRange(i+1, 1).getValue());//配列nameDataにセル値を押し込む;:(i+1,1)=iが1のときはB1を表す } Logger.log('セルデータ取得配列:' + nameData); var sheets = Sp.getSheets().length; //シートタブの既存数を取得 Logger.log('実行前シート数:' + sheets); if (lastRow > sheets){//シート数よりデータ行数が多いかどうか判定 for (i = 0 ; i < lastRow - sheets ;i++){//不足シート分繰り返し処理 Sp.insertSheet();//行数に不足するシートを追加作成 } } for (var i = 0 ; i < lastRow ; i++){//行数分繰り返し処理 Logger.log('変更前' + (i) + '番目のタブ名:' + Sp.getSheets()[i].getName()); Sp.getSheets()[i].setName(nameData[i]);//配列nameDataのi番目を取り出し、i番目のタブ名にセット Logger.log('変更後' + (i) + '番目のタブ名:' + Sp.getSheets()[i].getName()); } }
投稿2018/02/07 05:07
編集2018/02/07 09:55総合スコア107
0
ファームというのはフォームでしょうか。
シートの名前を設定(変更)する
投稿2018/01/16 09:41
総合スコア28660
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/17 01:00
2018/01/17 01:17
退会済みユーザー
2018/02/02 17:50
2018/02/02 21:53
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/07 05:19
2018/02/07 05:36
2018/02/07 05:39
2018/02/07 05:58
2018/02/07 06:12
2018/02/07 06:13
2018/02/07 09:54
2018/02/07 10:12