前提・実現したいこと
コピー元の特定シートの特定範囲を
同じファイル内の別シート(コピー先シート)の最終行の特定列へ
ペーストさせるためのGASを作りたいと思っています。
発生している問題・エラーメッセージ
以下のスクリプトは
コピー元シートのX2:AE2範囲を
コピー先シートのC列~J列の最終行へコピーさせるためのものです。
(Googleスプレッドシートの利用を前提)
function myFunction() { var ss_copyFrom = SpreadsheetApp.getActiveSpreadsheet(); var ss_copyTo = SpreadsheetApp.openById('コピー先のファイルID'); var sheet_copyFrom = ss_copyFrom.getSheetByName('コピー元のシート名'); var sheet_copyTo = ss_copyTo.getSheetByName('コピー先のシート名'); var copyValue = sheet_copyFrom.getRange('X2:AE2').getValues(); var targetRow = sheet_copyTo.getLastRow()+1; sheet_copyTo.getRange('C'+targetRow+':J'+targetRow).setValues(copyValue); }
https://teratail.com/questions/112154
こちらを参考に上記のスクリプトをテストしました。
確かにコピー先の最終行へペーストできたのですが、
上記ページのコメントにあるようにこのスクリプトだと
シート全体の最終行へペーストされます。
コピー先のシート全体の最終行ではなく、
コピー先シートのC列を1行目から見ていって、
C列の値が空欄になった1つ目の行にペーストさせたいのですが、
どのようにすれば良いでしょうか。
仮にコピー先シートのC1~C10まで値が入力されている場合はC11~J11にペースト、
次にコピー先シートのC1~C11まで値が入力されている場合はC12~J12へペーストさせたいと
思っています。
補足情報
また今回のコピー先シートは
見た目上は空白ですが実際には数式が入っているK列があります。
K列はIF関数で
C列に値があるときは数式結果を出し、C列が空欄のときは空欄表示にさせています。
お知恵をお貸しいただければ幸いです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/28 08:59