質問編集履歴

6

タイトル追記

2021/04/21 02:23

投稿

ngngm
ngngm

スコア1

test CHANGED
@@ -1 +1 @@
1
- GAS 特定行をそのまま別シートに行ごとコピペしたい
1
+ GAS 特定行をそのまま別シートに行ごとコピペしたいがエラーになってしまう
test CHANGED
File without changes

5

誤字修正

2021/04/21 02:23

投稿

ngngm
ngngm

スコア1

test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  for(sarchrow=0;sarchrow<lastrow;sarchrow++){
18
18
 
19
-  **mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).copyTo(writesheet2.getRange(copyrow,1),{contentsOnly:true});**
19
+  mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).copyTo(writesheet2.getRange(copyrow,1),{contentsOnly:true});
20
20
 
21
21
   copyrow=copyrow+1;
22
22
 
@@ -30,7 +30,7 @@
30
30
 
31
31
   ```
32
32
 
33
-  **mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).copyTo(writesheet2.getRange(copyrow,1),{contentsOnly:true});**
33
+  mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).copyTo(writesheet2.getRange(copyrow,1),{contentsOnly:true});
34
34
 
35
35
  ```
36
36
 

4

codeボタンを使い少し見やすくしました

2021/04/21 01:00

投稿

ngngm
ngngm

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,5 @@
1
+ ```
2
+
1
3
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('元シート');
2
4
 
3
5
  var lastrow = sheet.getDataRange().getLastRow();
@@ -20,13 +22,17 @@
20
22
 
21
23
  }
22
24
 
23
-  
25
+ ```
24
26
 
25
27
 
26
28
 
27
29
  上記コード(省略箇所あり)にて、
28
30
 
31
+  ```
32
+
29
33
   **mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).copyTo(writesheet2.getRange(copyrow,1),{contentsOnly:true});**
34
+
35
+ ```
30
36
 
31
37
  この行で【TypeError: mainsheet.getRange is not a function】とエラーが出てしまい進めることが出来ません。
32
38
 
@@ -44,9 +50,13 @@
44
50
 
45
51
  GAS初心者なりに色々調べ、代用として
46
52
 
53
+  ```
54
+
47
55
   var copyValue = mainsheet.getRange('A'+sarchrow+':AV'+sarchrow).getValues(); ←ここで止まる
48
56
 
49
57
   writesheet2.getRange('A'+copyrow+':AV'+copyrow).setValues(copyValue);
58
+
59
+ ```
50
60
 
51
61
  なども試したのですが同様の結果で止まってしまい、手詰まりとなってしまったので質問させていただきました。
52
62
 

3

やりたいことを具体的に記載いたしました。 コードのごちゃごちゃに関しては、綺麗な書き方があまり解ってないのでご容赦ください…

2021/04/21 00:59

投稿

ngngm
ngngm

スコア1

test CHANGED
File without changes
test CHANGED
@@ -32,6 +32,14 @@
32
32
 
33
33
 
34
34
 
35
+ やりたいことは、
36
+
37
+ for文でコピー元シートの1行目から最終行までを検索し、if文で判定を通過した場合に該当行の情報全てを別シートに1行目から順々に足していく、ということとなっています。
38
+
39
+ コピー元シートには49列までデータが入っております。
40
+
41
+
42
+
35
43
 
36
44
 
37
45
  GAS初心者なりに色々調べ、代用として

2

copyrow の変数定義が抜けていたので足しました。

2021/04/20 10:24

投稿

ngngm
ngngm

スコア1

test CHANGED
File without changes
test CHANGED
@@ -5,6 +5,8 @@
5
5
  var mainsheet = sheet.getRange(1, 1, lastrow,49).getValues();
6
6
 
7
7
  var sarchrow=0;
8
+
9
+ var copyrow=1;
8
10
 
9
11
  var writesheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('書き出し用シート');
10
12
 

1

初心者マークを付け足しました。

2021/04/20 05:45

投稿

ngngm
ngngm

スコア1

test CHANGED
File without changes
test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  }
20
20
 
21
-
21
+  
22
22
 
23
23
 
24
24