開始月の反映方法
先週「曜日により書式の変更をしたい」を投稿したものですが、書式の変更以前に日付が反映されなければ先に進めないということが判り、改めて此方にて質問いたします。
表のA4に開始月を入れたとき、B列以降にその月の日付と曜日が出るように組みたいのですが、どうにも開始日が1900/1/1~になってしまいます。
A4の年月を反映させるにはどうしたらよいのでしょうか。
宜しくお願い致します。
A B C D E F G H
3
----------------------------------------------------------------------------
4 2019年1月 | 1月1日 | 1月2日 | 1月3日 | 1月4日 | 1月5日 | 1月6日 | 1月7日 |
-----------------------------------------------------------------
5 | 火 | 水 | 木 | 金 | 土 | 日 | 月 |
----------------------------------------------------------------------------
6 山田一郎 | | | | | | | |
----------------------------------------------------------------------------
7 吉田真一 | | | | | | | |
----------------------------------------------------------------------------
8 鈴木京子 | | | | | | | |
----------------------------------------------------------------------------
9 渡辺 隆 | | | | | | | |
function myFunction() {
var mySheet = SpreadsheetApp.getActiveSheet(); //シート指定
var rng = mySheet.getRange(4,1).getValue(); //基準年月格納
var myWeekDay = new Array("(日)","(月)","(火)","(水)","(木)","(金)","(土)"); //曜日の表記
var myDay = new Date(rng); //年月指定
var myMonth = myDay.getMonth(); //月の格納
myDay.setDate(2); //開始日は「1」
mySheet.getRange("B4").activate(); //B4から開始
while ( myMonth == myDay.getMonth()) { //myDayに年月が格納されたら
.getFullYear.getMonth()
mySheet.getActiveCell().setValue(myDay.getDate()); //B4に日付を入力して
mySheet.getActiveCell().offset(1,0) //下セルに
.setValue(myWeekDay[myDay.getDay()]); //曜日の入力
mySheet.getActiveCell().offset(0,1).activate(); //右にセル移動
myDay.setTime(myDay.getTime() + 1000 * 60 * 60 * 24);
}
}