teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

13

説明の追記

2021/09/23 04:12

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  関数で生成した変数をグローバル変数に反映させたいと考えています。
2
- (フォルダは1つあればいいので、関数は1日1回のみ起動することを考えています)
2
+ (フォルダは1つあればいいので、関数は1日1回時間トリガーで起動することを考えています)
3
3
  解決法を教えていただけないでしょうか。
4
4
 
5
5
  以下コードです。

12

説明の追記

2021/09/23 04:12

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,5 @@
1
1
  関数で生成した変数をグローバル変数に反映させたいと考えています。
2
+ (フォルダは1つあればいいので、関数は1日1回のみ起動することを考えています)
2
3
  解決法を教えていただけないでしょうか。
3
4
 
4
5
  以下コードです。

11

間違いを修正

2021/09/23 04:03

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -6,7 +6,6 @@
6
6
  ```GoogleAppsScript
7
7
  //グローバル変数
8
8
  const sourceFolderId = "*****"; //親フォルダID(変更なし)
9
- let newFolderId = ""; //日付フォルダID
10
9
 
11
10
  //毎日日付フォルダを生成する関数
12
11
  function createFolder() {
@@ -20,5 +19,5 @@
20
19
  return newFolder;
21
20
  }
22
21
 
23
- newFolderId = newFolder.getId();
22
+ const newFolderId = newFolder.getId(); //日付フォルダID
24
23
  ```

10

間違いの修正

2021/09/23 03:50

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -20,5 +20,5 @@
20
20
  return newFolder;
21
21
  }
22
22
 
23
- newFolderId = newFolder;
23
+ newFolderId = newFolder.getId();
24
24
  ```

9

コードを追記

2021/09/23 03:49

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -19,4 +19,6 @@
19
19
  newFolder = folder.createFolder(dateName);
20
20
  return newFolder;
21
21
  }
22
+
23
+ newFolderId = newFolder;
22
24
  ```

8

コードの間違いを修正

2021/09/23 03:48

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -15,7 +15,7 @@
15
15
  //名前が今日の日付のフォルダを生成
16
16
  let today = new Date();
17
17
  today = Utilities.formatDate(today, "JST", "dd");
18
- const dateName = ${today}日;
18
+ const dateName = `${today}日`;
19
19
  newFolder = folder.createFolder(dateName);
20
20
  return newFolder;
21
21
  }

7

コードを簡略化

2021/09/23 03:12

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -16,6 +16,7 @@
16
16
  let today = new Date();
17
17
  today = Utilities.formatDate(today, "JST", "dd");
18
18
  const dateName = ${today}日;
19
- const newFolder = folder.createFolder(dateName);
19
+ newFolder = folder.createFolder(dateName);
20
+ return newFolder;
20
21
  }
21
22
  ```

6

間違いを修正

2021/09/23 02:58

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -17,4 +17,5 @@
17
17
  today = Utilities.formatDate(today, "JST", "dd");
18
18
  const dateName = ${today}日;
19
19
  const newFolder = folder.createFolder(dateName);
20
+ }
20
21
  ```

5

コードを簡略化

2021/09/23 02:56

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,4 @@
1
- Google Apps Script新聞社の業務改善取り組んでおります。
1
+ 関数生成した変数をグローバル変数反映させたいと考えています。
2
-
3
- 「指定のフォルダに記事や写真を保存する」というプログラムで仕様変更があり、「1日1回、翌日付のフォルダを生成し、その子フォルダに記事や写真を保存する」ことになりました。
4
-
5
- もともとそれぞれのフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
6
-
7
2
  解決法を教えていただけないでしょうか。
8
3
 
9
4
  以下コードです。
@@ -11,33 +6,15 @@
11
6
  ```GoogleAppsScript
12
7
  //グローバル変数
13
8
  const sourceFolderId = "*****"; //親フォルダID(変更なし)
14
- const articleFolderId = "*****"; //記事フォルダID
15
- const nonReviewedArticlesFolderId = "*****"; //未校正フォルダID
16
- const imageFolderId = "*****"; //写真フォルダID
9
+ let newFolderId = ""; //日付フォルダID
17
- const archiveFolderId = "*****"; //過去フォルダID
18
10
 
19
- //フォルダを生成する関数
11
+ //毎日日付フォルダを生成する関数
20
12
  function createFolder() {
21
- const sourceFolderId = '*****'; //親フォルダID(変更なし)
22
13
  const folder = DriveApp.getFolderById(sourceFolderId);
23
14
 
24
- //名前が日の日付のフォルダを生成
15
+ //名前が日の日付のフォルダを生成
25
- const today = new Date();
16
+ let today = new Date();
26
- let tomorrow = new Date(today.getFullYear(), today.getMonth(), today.getDate() + 1);
27
- tomorrow = Utilities.formatDate(tomorrow, "JST", "dd");
17
+ today = Utilities.formatDate(today, "JST", "dd");
28
- const dateName = ${tomorrow}日紙面;
18
+ const dateName = ${today}日;
29
- const dateFolder = folder.createFolder(dateName);
19
+ const newFolder = folder.createFolder(dateName);
30
-
31
- //記事フォルダID
32
- const articleFolder = dateFolder.createFolder("記事");
33
- const articleFolderId = articleFolder.getId();
34
-
35
- //写真フォルダID
36
- const imageFolder = dateFolder.createFolder("写真");
37
- const imageFolderId = imageFolder.getId();
38
-
39
- //未校正フォルダID
40
- const nonReviewedArticlesFolder = articleFolder.createFolder("未校正");
41
- const nonReviewedArticlesFolderId = nonReviewedArticlesFolder.getId();
42
- }
43
20
  ```

4

間違いを修正

2021/09/23 02:55

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  「指定のフォルダに記事や写真を保存する」というプログラムで仕様変更があり、「1日1回、翌日付のフォルダを生成し、その子フォルダに記事や写真を保存する」ことになりました。
4
4
 
5
- もともとフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
5
+ もともとそれぞれのフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
6
6
 
7
7
  解決法を教えていただけないでしょうか。
8
8
 

3

文法修正

2021/09/16 13:33

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  「指定のフォルダに記事や写真を保存する」というプログラムで仕様変更があり、「1日1回、翌日付のフォルダを生成し、その子フォルダに記事や写真を保存する」ことになりました。
4
4
 
5
- もともとフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は日付別のフォルダを作る関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
5
+ もともとフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
6
6
 
7
7
  解決法を教えていただけないでしょうか。
8
8
 

2

間違いの修正

2021/09/16 13:32

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,6 @@
1
1
  Google Apps Scriptで新聞社の業務改善に取り組んでおります。
2
2
 
3
- 「指定のフォルダに記事や写真を保存する」というプログラムで仕様変更があり、「1日1回、翌日付のフォルダを生成し、その子フォルダに記事や写真を保存する」ことになりました。
3
+ 「指定のフォルダに記事や写真を保存する」というプログラムで仕様変更があり、「1日1回、翌日付のフォルダを生成し、その子フォルダに記事や写真を保存する」ことになりました。
4
4
 
5
5
  もともとフォルダIDを格納したグローバル変数があり、その変数は他の関数でも使われているのですが、今後は日付別のフォルダを作る関数内で毎日新規のフォルダIDが生成されるため、それをどうやってグローバル変数に反映させるかで悩んでいます。
6
6
 

1

間違いを修正

2021/09/16 13:31

投稿

Junkak
Junkak

スコア20

title CHANGED
File without changes
body CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  ```GoogleAppsScript
12
12
  //グローバル変数
13
- const sourceFolderId = "*****"; //出稿記事フォルダID
13
+ const sourceFolderId = "*****"; //フォルダID(変更なし)
14
14
  const articleFolderId = "*****"; //記事フォルダID
15
15
  const nonReviewedArticlesFolderId = "*****"; //未校正フォルダID
16
16
  const imageFolderId = "*****"; //写真フォルダID
@@ -18,7 +18,7 @@
18
18
 
19
19
  //フォルダを生成する関数
20
20
  function createFolder() {
21
- const sourceFolderId = '*****'; //記事出稿フォルダID
21
+ const sourceFolderId = '*****'; //フォルダID(変更なし)
22
22
  const folder = DriveApp.getFolderById(sourceFolderId);
23
23
 
24
24
  //名前が明日の日付のフォルダを生成