【GAS、Google Spreadsheet】Googleドキュメントで日記を付けるために毎日Docファイルを作ってくれるスクリプトです

299 語
1 分
【GAS、Google Spreadsheet】Googleドキュメントで日記を付けるために毎日Docファイルを作ってくれるスクリプトです

はじまり#

135ml avatar
135ml
ほぉ~、毎日大根が良い感じに干涸らびていっていますな~。
リサちゃん avatar
リサちゃん
そうなんだよね~、この干涸らび具合を日記とかにして残しておきたいよね~。
135ml avatar
135ml
では、今回のツールで毎日の大根の成長をGoogleドキュメントに記してはどうかね?
リサちゃん avatar
リサちゃん
ほぉ~、使ってみっか~。 ボリボリ

ツールの概要#

毎日定期的にこのツールを作動させると、このフォルダのように「yyyyMMdd(曜日)」といった感じのファイル名のファイルを作成します。

「yyyyMMdd(E)」のファイルを元に作成しています。

ツールのソース#

以下が実際に使用しているソースになります。

function setTrigger(){
// var funcName = 'setTrigger';
// deleteTrigger(funcName);
// createTrigger(funcName);
duplicateDocument();
}
function duplicateDocument() {
// テンプレートファイル(「yyyyMMdd(E)」)
var templateFile = DriveApp.getFileById('XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX');
// 出力フォルダ(「010_Diary」)
var OutputFolder = DriveApp.getFolderById('YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY');
// 出力ファイル名
var OutputFileName = Utilities.formatDate(new Date(), 'JST', 'yyyyMMdd(E)');
templateFile.makeCopy(OutputFileName, OutputFolder);
}

苦労した点#

というか、出来なかった点です・・・。

ファイルをコピーするためのトリガーを以下のコードで書いたのですが、上手く定期的に動かず・・・。一度は動くんですが、2回目以降はなぜか動かない・・・。結局わからなかった・・・。

function createTrigger(funcName){
const date = new Date();
date.setDate(date.getDate() + 1);
date.setHours(16); // 日本の時間より14時間早く設定する。6時に作る。
date.setMinutes(1);
ScriptApp.newTrigger(funcName).timeBased().at(date).create();
}
function deleteTrigger(funcName){
const triggers = ScriptApp.getProjectTriggers();
for(const trigger of triggers){
if(trigger.getHandlerFunction() == funcName){
ScriptApp.deleteTrigger(trigger);
}
}
}

コードで出来なかったので、渋々この画面から設定しています。

おしまい#

135ml avatar
135ml
くそ~、トリガーがコードで上手く設定できなかったのが悔しかったな~。
リサちゃん avatar
リサちゃん
まあでもこれで大根を記録出来るぞ ボリボリ

以上になります!

記事を共有

この記事が役に立ったなら、ぜひ他の人と共有してください!

【GAS、Google Spreadsheet】Googleドキュメントで日記を付けるために毎日Docファイルを作ってくれるスクリプトです
https://endorphinbath.com/posts/gas-copy-googledoc/
著者
kinkinbeer135ml
公開日
2021-11-26
ライセンス
CC BY-NC-SA 4.0
関連記事 スマート
1
【GAS】Googleカレンダーに曜日を指定してスケジュールを登録するスプレッドシートの構築
Code Google Apps Scriptを使い、スプレッドシートからGoogleカレンダーに曜日指定でスケジュールを追加するシステムを作りました。繰り返し入力する版と個別に入力する版があります。
2
【Google Apps Script】自分がGASで使うIDとかトークンを1つのシートで管理するライブラリを作ろうとしたけど、断念した話
Code Google Apps Scriptで使うフォルダIDやスプレッドシートIDなどを一括管理するライブラリをスプレッドシート上で作ろうと思ったのですが、とある理由により頓挫しました。貴方もお気を付け下さい。
3
【Google Apps Script】onOpen時に「Spreadsheet.openByIdを呼び出す権限がありません」となり、メニューが追加されない
Code onOpenなどのSImple Triggerを使ったスクリプト実行時に、「Spreadsheet.openByIdを呼び出す権限がありません」みたいな権限エラーが発生した時に試したことを紹介します。
4
【GAS】Googleスプレッドシートではテーマカラーが変えられる! SpreadsheetThemeクラスをいじってみる
Software あなたはGoogleスプレッドシートではテーマカラーを変えられるって知っていましたか?デフォルトで用意されているテーマは16種類あるようなので全部試してみました。
5
【GAS、Google Spreadsheet】Googleドライブのフォルダに有るファイルを一覧で取得するスクリプトです
Code GoogleDriveの指定のフォルダにあるファイルを一覧で取得します。Googleドライブを整理したい時に役立つツールになるかと思います。
ランダム記事 ランダム
Profile Image of the Author
kinkinbeer135ml
SIerをやめて、プログラミングを勉強しています。※Amazonアソシエイトに参加しています。
お知らせ
私のブログへようこそ!これはサンプルのお知らせです。
音楽
カバー

音楽

再生中なし

0:00 0:00
歌詞なし
カテゴリ
タグ
サイト統計
記事
287
カテゴリー
8
タグ
93
総文字数
486,174
運用日数
0
最終活動
0 日前

目次