{"id":15557,"date":"2023-08-11T09:00:00","date_gmt":"2023-08-11T00:00:00","guid":{"rendered":"https:\/\/www.autooffice.co.kr\/blog\/2023\/08\/11\/copy-data-with-conditions-in-apps-script\/"},"modified":"2025-09-15T18:03:18","modified_gmt":"2025-09-15T09:03:18","slug":"copy-data-with-conditions-in-apps-script","status":"publish","type":"post","link":"https:\/\/www.autooffice.co.kr\/en\/blog\/2023\/08\/11\/copy-data-with-conditions-in-apps-script\/","title":{"rendered":"Copy 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 title=\"\" href=\"https:\/\/www.autooffice.io\/content\/ebizbooks-apps-script\" target=\"_blank\" rel=\"noopener\">&#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>This blog post will demonstrate a script that copies data with specific conditions in Google Apps Script. The script copies data from &#8220;\uc2dc\ud2b82&#8221; sheet to &#8220;\uc2dc\ud2b84&#8221; sheet in the same spreadsheet.<\/p>\n<h2 id=\"code\">Code<\/h2>\n<pre><code>function copyDataWithConditions() {\n  const SS = SpreadsheetApp.getActiveSpreadsheet()\n  const T_SHEET2 = SS.getSheetByName('\uc2dc\ud2b82')\n  const T_SHEET4 = SS.getSheetByName('\uc2dc\ud2b84')\n\n  T_SHEET2.getDataRange().copyTo(T_SHEET4.getRange('A1'), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, 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 using <code>SpreadsheetApp.getActiveSpreadsheet()<\/code>. Then, it gets references to the &#8220;\uc2dc\ud2b82&#8221; and &#8220;\uc2dc\ud2b84&#8221; sheets using <code>getSheetByName()<\/code>.<\/p>\n<p>The <code>getDataRange()<\/code> method is used to get the range containing all data in &#8220;\uc2dc\ud2b82&#8221; sheet. The <code>copyTo()<\/code> method is then called on this range, specifying the destination range in &#8220;\uc2dc\ud2b84&#8221; sheet as <code>A1<\/code>. The third argument, <code>SpreadsheetApp.CopyPasteType.PASTE_NORMAL<\/code>, determines the type of paste operation to be performed.<\/p>\n<p><span style=\"color: #ff3366;\">There are 8 types of paste operation as below, <a href=\"https:\/\/developers.google.com\/apps-script\/reference\/spreadsheet\/ copy-paste-type?hl=en\" data-wplink-edit=\"true\">See Google description link<\/a>.<\/span><\/p>\n<ol>\n<li><span style=\"color: #ff3366;\">PASTE_NORMAL: Paste values, formulas, formats and merges.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_NO_BORDERS: Paste values, formulas, formats and merges but without borders.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_FORMAT: Paste the format only.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_FORMULA: Paste the formulas only.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_DATA_VALIDATION: Paste the data validation only.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_VALUES: Paste the values ONLY without formats, formulas or merges.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_CONDITIONAL_FORMATTING: Paste the color rules only.<\/span><\/li>\n<li><span style=\"color: #ff3366;\">PASTE_COLUMN_WIDTHS: Paste the column widths only.<\/span><\/li>\n<\/ol>\n<h2 id=\"example\">Example<\/h2>\n<p>Let&#8217;s say we have a spreadsheet with two sheets: &#8220;\uc2dc\ud2b82&#8221; and &#8220;\uc2dc\ud2b84&#8221;. &#8220;\uc2dc\ud2b82&#8221; contains a table with data, and we want to copy this data to &#8220;\uc2dc\ud2b84&#8221;. We can use the <code>copyDataWithConditions()<\/code> function to accomplish this.<\/p>\n<p>After running the script, all the data from &#8220;\uc2dc\ud2b82&#8221; will be copied to &#8220;\uc2dc\ud2b84&#8221; starting from cell A1.<\/p>\n<h2 id=\"ai-prompt\">AI Prompt<\/h2>\n<p>Write a function that copies data from &#8220;\uc2dc\ud2b82&#8221; to &#8220;\uc2dc\ud2b84&#8221; in the same spreadsheet using Google Apps Script. <span style=\"color: #ff3366;\">Set CopyPasteType as NORMAL.\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog post will demonstrate a script that copies data with specific conditions in Google Apps Script. The script copies data from &#8220;\uc2dc\ud2b82&#8221; sheet to &#8220;\uc2dc\ud2b84&#8221; sheet in the same spreadsheet.<\/p>\n","protected":false},"author":1,"featured_media":15571,"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,537,7],"class_list":["post-15557","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-spreadsheet","category-apps-script","tag-ai-assisted","tag-script","tag-copyto","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\/15557","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=15557"}],"version-history":[{"count":4,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts\/15557\/revisions"}],"predecessor-version":[{"id":17196,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/posts\/15557\/revisions\/17196"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/media\/15571"}],"wp:attachment":[{"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/media?parent=15557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/categories?post=15557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.autooffice.co.kr\/en\/wp-json\/wp\/v2\/tags?post=15557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}