【営業でも分かる!】取得した曜日番号を曜日に変換する方法

前回は、アクティブセルに記載されている日付から、曜日番号を取得し、隣のセルに記載。。。
まで行いました。

まだの方は、まずこちらから御覧ください。

それでは、今回は、曜日番号から、実際に曜日にして、それをアクティブなセルの右隣に記入できるようにしてみます。

目次

今回の目標

スクリプト実行前

スプレッドシートに記載している日付をクリック(セルが選択された状態)してから、
⇒実行(Ctrl+R)。。。
下記の様な表示 ↓↓↓↓

スクリプト実行後

実現のスクリプトと解説

下記をコンテナバインドスクリプトのスクリプトエディターにコピペして、保存(Ctrl+S)⇒
スプレッドシートに記載している日付をクリック(セルが選択された状態)してから⇒
スクリプトを実行(Ctrl+R)。。。

【前提】コンテナバインドスクリプトで作成しています。

//ファンクション名を「dayOfWeek2」にする(ちなみに、dayOfWeek2の部分は、何でも良いです)
function dayOfWeek2(){

 //スプレッドシートの「アクティブなスプレッドシート全体」を取得し、それを「ss」に代入
 var ss = SpreadsheetApp.getActiveSpreadsheet();

 //「ss(アクティブなスプレッドシート全体)」の「アクティブなシートだけ」を「sheet」に代入
 var sheet = ss.getActiveSheet();

 //「sheet(アクティブなシート)」の「現在選択している(カーソルがあっている)セル」を「activeCell」に代入
 var activeCell = sheet.getActiveCell();

 //曜日を表す文字列を持った配列を「allDayOfWeek」に代入)
 var allDayOfWeek = ['日', '月', '火', '水', '木', '金', '土'];

 //日付情報を扱うDateクラスを用いて「activeCell(現在選択している(カーソルがあっている)セル)」に記載されている日付を取得し、その日付から曜日(曜日番号)を取得し、その曜日(曜日番号)を「dayNum」に代入
 var dayNum = new Date(activeCell.getValue()).getDay();

 //「activeCell(現在選択している(カーソルがあっている)セル)」の場所から「0」=現状の行で、「1」=1つ隣のセルに、「dayNum(曜日番号)」を入れなさい。
 activeCell.offset(0, 1).setValue(allDayOfWeek[dayNum]+'曜日');
}

どうでしょうか?スプレッドシートに「○曜日」が表示されましたでしょうか?

まとめ

今回のスクリプトの中で

//「activeCell(現在選択している(カーソルがあっている)セル)」の場所から「0」=現状の行で、「1」=1つ隣のセルに、「dayNum(曜日番号)」を「曜日」を追加して入れなさい。
activeCell.offset(0, 1).setValue(allDayOfWeek[dayNum]+'曜日');

も前回同様に重要ですが、一番重要なのは、

//曜日を表す文字列を持った配列を「allDayOfWeek」に代入)
var allDayOfWeek = ['日', '月', '火', '水', '木', '金', '土'];

という配列を事前に作成しておいて、『allDayOfWeek[dayNum]』という形で配列のインデックスを指定してあげているところです。
※配列のインデックスは 0 から始まります。

var arr = ["松", "竹", "梅"];
console.log(arr);                     // => ["松", "竹", "梅"]
console.log(arr[0]);                  // => "松"
console.log(arr[1]);                  // => "竹"
console.log(arr[2]);                  // => "梅"

以前は、new Array() を使用していましたが、今ではあまり使用されていないようです。
※Arrayオブジェクトは配列を扱うオブジェクトです。
以下のようにnew演算子でインスタンスを作成することも可能です。
 var allDayOfWeek = new Array(‘日’, ‘月’, ‘火’, ‘水’, ‘木’, ‘金’, ‘土’);
 ですので、上記でも同じことは可能です。

では、次は、固定セルの曜日が表示できるようにしてみます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA