{"id":15558,"date":"2023-08-11T09:00:00","date_gmt":"2023-08-11T00:00:00","guid":{"rendered":"https:\/\/www.autooffice.co.kr\/blog\/2023\/08\/11\/copying-data-with-conditions-in-apps-script\/"},"modified":"2025-09-15T17:53:07","modified_gmt":"2025-09-15T08:53:07","slug":"copying-data-with-conditions-in-apps-script","status":"publish","type":"post","link":"https:\/\/www.autooffice.co.kr\/en\/blog\/2023\/08\/11\/copying-data-with-conditions-in-apps-script\/","title":{"rendered":"Copying Data with Conditions in Apps Script"},"content":{"rendered":"<p>This post is a corrected post after AI explains the code included in the book <a href=\"https:\/\/www.autooffice.io\/content\/ebizbooks-apps-script\" target=\"_blank\" rel=\"noopener\" title=\"\">&#8220;Google Apps Script 101: Building Work Automation For Free&#8221;<\/a>. Added a <s>strikethrough<\/s> when editing what AI has written, and added <span style=\"color: #ff3366;\">color<\/span> when edited by author<\/p>\n<h2>Table of Contents<\/h2>\n<ol>\n<li><a href=\"#summary\">Summary<\/a><\/li>\n<li><a href=\"#code\">Code<\/a><\/li>\n<li><a href=\"#explanation\">Code Explanation<\/a><\/li>\n<li><a href=\"#example\">Example<\/a><\/li>\n<li><a href=\"#ai-prompt\">AI Prompt<\/a><\/li>\n<\/ol>\n<h2 id=\"summary\">Summary<\/h2>\n<p>In this blog post, we will explore how to copy data from one sheet to another with specific conditions using Apps Script. We will learn how to use the <code>copyTo<\/code> method to copy data and apply various options such as copying only values or including formatting.<\/p>\n<h2 id=\"code\">Code<\/h2>\n<pre><code>function copyDataWithConditions() {\n  const SS = SpreadsheetApp.getActiveSpreadsheet()\n  const T_SHEET2 = SS.getSheetByName('Sheet2')\n  const T_SHEET4 = SS.getSheetByName('Sheet4')\n\n  T_SHEET2.getDataRange().copyTo(T_SHEET4.getRange('A1'), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, false)\n  \n  T_SHEET2.getDataRange().copyTo(T_SHEET4.getRange('A1'), SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS, false)\n}<\/code><\/pre>\n<h2 id=\"explanation\">Code Explanation<\/h2>\n<p>The code defines a function named <code>copyDataWithConditions<\/code>. It retrieves the active spreadsheet and assigns it to the <code>SS<\/code> variable. It then gets references to two sheets, <code>T_SHEET2<\/code> and <code>T_SHEET4<\/code>, using their names.<\/p>\n<p>The <code>getDataRange()<\/code> method is used to retrieve the range of data in <code>T_SHEET2<\/code>. The <code>copyTo()<\/code> method is then called on this range, specifying the target range <code>A1<\/code> in <code>T_SHEET4<\/code> to copy the data to. The <code>SpreadsheetApp.CopyPasteType.PASTE_NORMAL<\/code> option is used to copy only values without formatting.<\/p>\n<p>Similarly, another <code>copyTo()<\/code> method is called to copy the column widths from <code>T_SHEET2<\/code> to <code>T_SHEET4<\/code> using the <code>SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS<\/code> option.<\/p>\n<h2 id=\"example\">Example<\/h2>\n<p>Consider a scenario where you have a spreadsheet with two sheets named &#8220;Data&#8221; and &#8220;Summary&#8221;. You want to copy the data from the &#8220;Data&#8221; sheet to the &#8220;Summary&#8221; sheet preserving column widths. You can use the <code>copyDataWithConditions<\/code> function to achieve this:<\/p>\n<pre><code>function copyDataWithConditions() {\n  const SS = SpreadsheetApp.getActiveSpreadsheet()\n  const dataSheet = SS.getSheetByName('Data')\n  const summarySheet = SS.getSheetByName('Summary')\n\n  dataSheet.getDataRange().copyTo(summarySheet.getRange('A1'), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, false)\n  \n  dataSheet.getDataRange().copyTo(summarySheet.getRange('A1'), SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS, false)\n}<\/code><\/pre>\n<h2 id=\"ai-prompt\">AI Prompt<\/h2>\n<p>Write a function that copies data from one sheet to another with specific conditions. Use the <code>copyTo<\/code> method to copy the data and apply options such as preserving column widths. Make sure to retrieve the active spreadsheet and specify the sheet names dynamically.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog post, we will explore how to copy data from one sheet to another with specific conditions using Apps Script. We will learn how to use the copyTo method to copy data and apply various options such as copying only values or including formatting.<\/p>\n","protected":false},"author":1,"featured_media":15577,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[5,118],"tags":[512,69,538,7],"class_list":["post-15558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-spreadsheet","category-apps-script","tag-ai-assisted","tag-script","tag-copypastetype","tag-spreadsheet"],"translation":{"provider":"WPGlobus","version":"3.0.2","language":"en","enabled_languages":["ko","en"],"languages":{"ko":{"title":true,"content":true,"excerpt":true},"en":{"title":true,"content":true,"excerpt":true}}},"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts\/15558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/comments?post=15558"}],"version-history":[{"count":4,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts\/15558\/revisions"}],"predecessor-version":[{"id":17192,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts\/15558\/revisions\/17192"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/media\/15577"}],"wp:attachment":[{"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/media?parent=15558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/categories?post=15558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/tags?post=15558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}