Google Spreadsheetに溜め込んだデータを読み取り、予め作っておいたテンプレートに、データを埋め込み、新しくGoogle Documentの文書を作りたいです。
参考コードをもとに作成してみたのですが動きません。
どうすればいいかよろしくお願いします。
function myFunction() {
// プログラム初期設定
var date = new Date();
var userProperties = PropertiesService.getScriptProperties();
var templateId = userProperties.getProperty('ドキュメントID');
// データを取得するスプレッドシートをオープン
var spreadsheet = SpreadsheetApp.openById('スプレッドシートID');
var sheet = spreadsheet.getSheetByName('シート名');
for (var row = 2; row <= sheet.getLastRow(); row++) {
// データを取得する
var name = sheet.getRange(row, 2).getValue(); // 氏名
var classification = sheet.getRange(row, 5).getValue(); // 分類
var place = sheet.getRange(row, 4).getValue(); // 場所
var problem = sheet.getRange(row, 6).getValue(); // 問題
var cause = sheet.getRange(row, 7).getValue(); //原因
var improvement = sheet.getRange(row, 8).getValue(); //改善
var receipt = createReceipt(date, name, classification, place, problem, cause, improvement, templateId);
}
}
function createReceipt(date, name, classification, place, problem, cause, improvement, templateId) {
var formatDate = Utilities.formatDate(date, 'GMT', 'yyyy年MM月dd日');
var file = DriveApp.getFileById(templateId).makeCopy(formatDate + '_' + name + '様');
var receipt = DocumentApp.openById(file.getId());
receipt.getBody().replaceText('{{日付}}', formatDate);
receipt.getBody().replaceText('{{氏名}}', name);
receipt.getBody().replaceText('{{分類}}', classification);
receipt.getBody().replaceText('{{所属}}', place);
receipt.getBody().replaceText('{{問題}}', problem);
receipt.getBody().replaceText('{{原因}}', cause);
receipt.getBody().replaceText('{{改善}}', improvement);
return receipt;
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
回答がないみたいですので。
GASはほとんど存じませんけれど・・・
>参考コードをもとに作成してみたのですが動きません。
>どうすればいいかよろしくお願いします。
書きっぱなしで動くことを期待しているのでしょうか?
どこまで動作しているのかを確認なさっていますか?
あるいは、どこでエラーになっているのかを確認していますか?
(ご質問文の雰囲気からは、失礼ながら、書きっぱなし→動かない→そのまま、のようにも感じられます)
処理行数やセル数を減らして(=同じ処理なので)、まずは、デバッグしてみましょう。
デバッグする気が無いのあれば、あきらめるという選択肢もあります。
以下、ご参考までに。
https://yamamtoblog.com/google-apps-script-debug/
https://vba-gas.info/gas-breakpoint-debug
https://takuya-1st.hatenablog.jp/entry/2021/06/0 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- オープンソース Coinmarketcap api 1 2022/05/30 15:47
- JavaScript 定積分の近似値を計算する関数composite_newton_cotesをつくりたい 1 2023/01/18 14:09
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- その他(パソコン・スマホ・電化製品) pthonのframeに演算結果(数値)を表示したい 1 2023/06/05 22:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スマフォではボタンを表示させ...
-
なぜmatchメソッドがエラーにな...
-
gas スプレッドシートがアクテ...
-
イラレでナンバリングする方法
-
ローカルにあるファイルを検索...
-
【JavaScript】数当てゲームを...
-
vb.netでの記述方法について 以...
-
gas 日付けの加算
-
var exports = exports || {}; ...
-
JavaScriptで平日のみをカウン...
-
GASのエラー「undefined からプ...
-
1日1回だけ引けるjavascriptお...
-
C#OpenCv V4にのエラーに関する...
-
ASP.NETのコントロールの値をJa...
-
jsによって検索プルダウン、都...
-
GASでundefinedエラーが出ます
-
JavaScript でのリアルタイム時...
-
翌月を取得するGASが分かりません
-
nullまたはオブジェクトではあ...
-
極小コードに挑戦!part2 数列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
var exports = exports || {}; ...
-
google apps scriptの終了のさせ方
-
C#OpenCv V4にのエラーに関する...
-
GASでundefinedエラーが出ます
-
ジェネレーターの作り方
-
GASでGoogleフォームの自動返信...
-
HTMLで作った時報アプリが動き...
-
javascriptでテーブルに追加し...
-
html javascript リンク先アド...
-
【西暦等の変換】
-
ローカルにあるファイルを検索...
-
ASP.NETのコントロールの値をJa...
-
なぜmatchメソッドがエラーにな...
-
翌月を取得するGASが分かりません
-
gas スプレッドシートがアクテ...
-
ASP.NET MVCでObjectをjsに渡す
-
カンマで終わってるのはセミコ...
-
JavaScriptで文字列の特定文字...
-
javascriptでiframeのURL変更は?
-
APIを使って埋め込んだグーグル...
おすすめ情報