Google Apps Script入門
セルのコピー&各種ペースト

Google Apps Script(GAS)の入門解説です
公開日:2016-11-22 最終更新日:2016-11-22

第26回.セルのコピー&各種ペースト

Google Apps Script で、スプレッドシートのセルをコピペする時の書き方になります、


セルのコピペといっても、セル全体、値のみ、書式のみと、いろいろな貼り付け方法があります。

記述方法は複数ありますが、基本の使い方だけ覚えれば十分です。


コピー&ペースト

Rangeオブジェクトののメソッドになります。

メソッド書式 簡単な説明
copyFormatToRange(gridId,column,columnEnd,row,rowEnd) 書式設定をコピーします。
copyFormatToRange(sheet,column,columnEnd,row,rowEnd) 書式設定をコピーします。
copyTo(destination) セルをコピーします。
copyTo(destination,options) セルをコピーします。
貼り付けオプションを指定できます。
copyValuesToRange(gridId,column,columnEnd,row,rowEnd) 値をコピーします。
copyValuesToRange(sheet,column,columnEnd,row,rowEnd) 値をコピーします。

いくつかありますが、
太字にした、

copyTo(destination)
copyTo(destination,options)

この二つを覚えれば全て対応できます。

destination
タイプ 説明
destination Range 貼り付け先の先頭セルを指定

options
タイプ 説明
formatOnly Boolean フォーマットだけを貼り付けます。
値はコピーされません。
{formatOnly:true}
contentsOnly Boolean 値だけを貼り付けます。
フォーマットはコピーされません。
{contentsOnly:true}


カット&ペースト

Rangeオブジェクトののメソッドになります。

メソッド書式 簡単な説明
moveTo(target) 目標範囲に、この範囲からカット&ペースト(形式と値の両方)。

セルを移動させるので、moveToになります。

copyToと違い、オプションはありません。
当然なのですが、値のみ移動といった機能はありません。


使用例

function sample26() {
  var sheet = SpreadsheetApp.getActiveSheet()
  //A1:C3をE1にコピー
  sheet.getRange(1, 1, 3, 3).copyTo(sheet.getRange(1, 5))
  //A1:C3をE1に値のみコピー
  sheet.getRange(1, 1, 3, 3).copyTo(sheet.getRange(5, 1), {contentsOnly:true})
  //A1:C3をE1にフォーマットのみコピー
  sheet.getRange(1, 1, 3, 3).copyTo(sheet.getRange(11, 1), {formatOnly:true})
  //A1:C3をE1に移動
  sheet.getRange(1, 1, 3, 3).moveTo(sheet.getRange(1, 5))
}
順に、

普通ののコピペ
値貼り付け
書式貼り付け
カット&ペースト

になります。
この4パターンが基本になります。


Google Apps Scriptでは、セルのコピペ自体はそんなに多用することはないと思います。
ですが、必須機能です。
必要になった時に困らないように、しっかり覚えておきましょう。




同じテーマ「Google Apps Script入門」の記事

第23回.行・列を操作する(挿入・削除・非表示・サイズ)

シートの行や列全体に対する操作になります、挿入、削除、表示非表示、行高、列幅、これらは、sheetオブジェクトのメソッドを使います。以下では、sheetオブジェクトのメソッドのうち、行・列に関するメソッドを抜粋しています。基本として見方、使い方ですが、1行や1列のみ対象の場合は単数形(Row,Column) 複数行…
第24回.シートの挿入・削除・名前変更
シートの挿入、シートの削除、シートの名前変更です、シートの挿入・削除は、Spreadsheetオブジェクトのメソッド、名前の変更は、Sheetオブジェクトのメソッドになります。以下では、これだけ覚えておけば良いというメソッドに限定して抜粋しています。
第25回.スプレッドシート(ブック)の作成・名前変更
スプレッドシートの作成と名前変更です、スプレッドシートの作成は、SpreadsheetAppのcreateメソッド、名前の変更は、Spreadsheetオブジェクトのrenameメソッドになります。削除は、と思ってメソッドを探しましたが、見当たりませんでした。
第26回.セルのコピー&各種ペースト
第27回.セルに数式を入れる
GoogleAppsScriptで、スプレッドシートのセルに、計算結果ではなく、計算式そのものを入れる場合のほうほうについての解説です。スクリプトで処理する場合は計算結果を入れる事が多いのですが、時に計算式を入れた方が後の使い勝手が良い場合もあります。
第28回.リンクの挿入・編集・削除
GoogleAppsScriptで、スプレッドシートのセルにハイパーリンクを挿入する場合です、しかし、そもそもスプレッドシートでは、Excelのハイパーリンクとは違い、HYPERLINK関数しかありません。そこで、スクリプトでハイパーリンク関数を挿入する方法についてという事になります。
第29回.メモの挿入・削除と改行文字
GoogleAppsScriptで、スプレッドシートのセルにメモを挿入・削除するスクリプトの書き方です、メモを改行する時の改行コードについても解説します。メモは、まさしくメモとして各種注意事項や、変更履歴等として使う事の出来る機能です。ただし、「コメントの挿入」とは違います。
第30回.並べ替え
GoogleAppsScriptで、スプレッドシートを並べ替えます、書き方のバリエーションがいろいろありますが、並べ替えキー列、昇順・降順、これらをどのように指定するかだけの違いになります。書き方のバリエーションごとに順に見ていきましょう。
第31回.入力規則
GoogleAppsScriptで、スプレッドシートに入力規則を設定します、入力規則は機能がとても多く、それにメ対応したソッドも多数あります。ここでは、メソッドの一覧と、代表的な使い方を参考スクリプトを掲載します。入力規則の作成方法の概要 クラスSpreadsheetAppのメソッドnewDataValidatio…
第32回.グラフ
GoogleAppsScriptで、スプレッドシートにグラフを挿入します。スクリプトであまり凝ったレイアウトのグラフを作成しようとすると、結構大変になりますので、そのような場合は、手動で作成したグラフをスクリプトで変更する等の工夫も必要です。
第33回.表示の固定
GoogleAppsScriptで、シートの表示(スクロール)の固定を設定します。表とは一般に、横に項目、縦にデータが連続して入っているものです、スクロールした場合に、見出しが見えなくなってしまう事のないように設定しておきます。表示(スクロール)の固定に関するメソッド Sheetのメソッドを使います。


新着記事NEW ・・・新着記事一覧を見る

VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)
VBAでクリップボードへ文字列を送信・取得する3つの方法|VBA技術解説(2023-12-07)
難しい数式とは何か?|エクセル雑感(2023-12-07)
スピらない スピル数式 スピらせる|エクセル雑感(2023-12-06)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.変数宣言のDimとデータ型|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.並べ替え(Sort)|VBA入門
8.条件分岐(IF)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ