{"id":17146,"date":"2025-01-14T15:44:42","date_gmt":"2025-01-14T06:44:42","guid":{"rendered":"https:\/\/84office.jp\/?p=17146"},"modified":"2025-01-14T15:44:43","modified_gmt":"2025-01-14T06:44:43","slug":"bulk-deletion-gas-files","status":"publish","type":"post","link":"https:\/\/84office.jp\/en\/bulk-deletion-gas-files\/","title":{"rendered":"Bulk Delete Files in Google Drive with Google Apps Script: Organize with Spreadsheets"},"content":{"rendered":"<div class=\"codoc-evacuations\" style=\"display:none;\" data-shortcode=\"\"><\/div>\n<p class=\"wp-block-paragraph\">In previous articles, we introduced how to modify access permissions and bulk copy files within a folder using Google Apps Script. This time, we\u2019ll explain how to <strong>bulk delete files in Google Drive<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Using two Google Apps Scripts, you can list files within a folder or across your entire Drive and efficiently delete unnecessary ones in bulk.<\/p>\n\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">Manually deleting files one by one in Google Drive can be time-consuming, but with this method, you can streamline the process and save time.<\/p>\n\n\n<div class=\"swell-block-postLink u-mb-ctrl u-mb-30\">\t\t\t<div class=\"p-blogCard -internal\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u3042\u308f\u305b\u3066\u8aad\u307f\u305f\u3044<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/10\/9add5d490b0458ef413f8820e4238f70-300x158.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/84office.jp\/folder-file-copy-gas\/\">Google\u30c9\u30e9\u30a4\u30d6\u306e\u30d5\u30a9\u30eb\u30c0\u5185\u30d5\u30a1\u30a4\u30eb\u3092\u307e\u3068\u3081\u3066\u30b3\u30d4\u30fc\uff01\u30b9\u30d7\u30ec\u30c3\u30c9\u30b7\u30fc\u30c8\u00d7GAS\u3067\u4f5c\u696d\u52b9\u7387\u5316<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">\u3053\u306e\u8a18\u4e8b\u3092\u304a\u3059\u3059\u3081\u306e\u65b9 \u4e00\u3064\u306e\u30d5\u30a9\u30eb\u30c0\u5185\u306b\u30d5\u30a1\u30a4\u30eb\u304c\u591a\u6570\u3042\u308b\u65b9 \u30d5\u30a9\u30eb\u30c0\u5185\u306e\u30d5\u30a1\u30a4\u30eb\u30b3\u30d4\u30fc\u3092\u81ea\u52d5\u5316\u3057\u305f\u3044\u65b9 Google\u30c9\u30e9\u30a4\u30d6\u3084\u30b9\u30d7\u30ec\u30c3\u30c9\u30b7\u30fc\u30c8\u3092\u4f7f\u3063\u3066\u3044\u3066\u3001\u300c\u30d5\u30a9&#8230;<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink u-mb-ctrl u-mb-60\">\t\t\t<div class=\"p-blogCard -internal\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u3042\u308f\u305b\u3066\u8aad\u307f\u305f\u3044<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/e9a4a320bee4a411fd943416aa77e65a-300x158.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/84office.jp\/en\/file-access-rights-change-setup\/\">Effortlessly Manage and Modify Spreadsheet Permissions Using Google Apps Script: Preparation Guide<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">Have you ever struggled with the tedious task of reviewing and modifying sharing settings for individual files, such as spreadsheets or documents? This proce&#8230;<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n\n<h2 class=\"wp-block-heading\">Example Output<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>List Files in Google Drive (Script \u2460)<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"1200\" height=\"557\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46.png\" alt=\"\" class=\"wp-image-17155\" style=\"width:714px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46.png 1200w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-300x139.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-1024x475.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-768x356.png 768w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>Bulk Delete Selected Files (Script \u2461)<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" width=\"1398\" height=\"552\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47.png\" alt=\"\" class=\"wp-image-17158\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47.png 1398w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-300x118.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-1024x404.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-768x303.png 768w\" sizes=\"(max-width: 1398px) 100vw, 1398px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list has-border -border02 u-mb-ctrl u-mb-40 has-swl-pale-03-background-color has-background\">\n<li><strong><strong>Specify a folder name or ID to list target files in a spreadsheet.<\/strong><\/strong><\/li>\n\n\n\n<li><strong><strong>Select files for deletion using checkboxes and execute bulk deletion.<\/strong><\/strong><\/li>\n\n\n\n<li><strong><strong>Record a history of deleted files for reference.<\/strong><\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"is-style-big_icon_caution u-mb-ctrl u-mb-60 wp-block-paragraph\">This script moves files in Google Drive to the <strong>Trash<\/strong>, so they are not permanently deleted.<br>To completely remove the files, you will need to manually empty the Trash in Google Drive as needed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading u-mb-ctrl u-mb-40\">Steps<\/h2>\n\n\n\n<h3 class=\"wp-block-heading u-mb-ctrl u-mb-30\"><strong>Script 1: File Listing<\/strong><\/h3>\n\n\n\n<p class=\"u-mb-ctrl u-mb-50 wp-block-paragraph\">This script lists the files you want to delete, allowing you to select which files to remove.<\/p>\n\n\n\n<div class=\"swell-block-step u-mb-ctrl u-mb-60\" data-num-style=\"circle\">\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\"><strong>Open the Spreadsheet<\/strong><\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"698\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-45-1024x698.png\" alt=\"\" class=\"wp-image-17154\" style=\"width:496px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-45-1024x698.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-45-300x205.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-45-768x524.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-45.png 1106w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Open a Google Spreadsheet.<\/p>\n\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">(Both existing or new files are supported.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Since the items are automatically created by Google Apps Script, no manual input is required.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A new sheet named <strong>&#8220;Bulk File Deletion&#8221;<\/strong> will be created.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Open Apps Script Editor<\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"933\" height=\"591\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d.png\" alt=\"\" class=\"wp-image-16537\" style=\"width:447px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d.png 933w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d-300x190.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d-768x486.png 768w\" sizes=\"(max-width: 933px) 100vw, 933px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Open a Google Spreadsheet and click on \u201c<strong>Extensions<\/strong>\u201d in the menu, then \u201c<strong>Apps Script<\/strong>\u201d to open the Apps Script editor.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\"><strong>Create the Script<\/strong><\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large\"><img decoding=\"async\" width=\"1024\" height=\"472\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-1024x472.png\" alt=\"\" class=\"wp-image-16191\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-1024x472.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-300x138.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-768x354.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662.png 1387w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">Since the default <code>function myFunction() {}<\/code> is present, delete it and replace it with the script below.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function listFilesForDeletion() {\n  const ui = SpreadsheetApp.getUi();\n  const response = ui.prompt(\n    'Specify a Folder',\n    'Enter &quot;All Files in Drive&quot; or provide a folder name or folder ID:',\n    ui.ButtonSet.OK_CANCEL\n  );\n\n  if (response.getSelectedButton() === ui.Button.CANCEL) {\n    ui.alert('Operation cancelled.');\n    return;\n  }\n\n  const input = response.getResponseText().trim();\n\n  \/\/ If &quot;All Files in Drive&quot; is entered, list all files; otherwise, list files in the specified folder\n  if (input === 'All Files in Drive') {\n    listAllFilesForDeletion();\n  } else {\n    listFilesInFolderForDeletion(input);\n  }\n}\n\nfunction listAllFilesForDeletion() {\n  const sheet = setupDeletionSheet();\n  const files = DriveApp.getFiles();\n  let row = 2;\n\n  while (files.hasNext()) {\n    const file = files.next();\n    appendFileDataForDeletionToSheet(sheet, file, row);\n    row++;\n  }\n}\n\nfunction listFilesInFolderForDeletion(folderNameOrId) {\n  const sheet = setupDeletionSheet();\n  let folder;\n\n  try {\n    folder = DriveApp.getFolderById(folderNameOrId);\n  } catch (e) {\n    const folders = DriveApp.getFoldersByName(folderNameOrId);\n    if (folders.hasNext()) {\n      folder = folders.next();\n    } else {\n      SpreadsheetApp.getUi().alert('Folder not found.');\n      return;\n    }\n  }\n\n  const files = folder.getFiles();\n  let row = 2;\n\n  while (files.hasNext()) {\n    const file = files.next();\n    appendFileDataForDeletionToSheet(sheet, file, row);\n    row++;\n  }\n}\n\nfunction setupDeletionSheet() {\n  const sheetName = 'Bulk File Deletion';\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName) || SpreadsheetApp.getActiveSpreadsheet().insertSheet(sheetName);\n\n  \/\/ Clear and reset the sheet\n  sheet.clear();\n\n  \/\/ Set headers\n  const headers = [\n    'Folder Name', \n    'File Name', \n    'Owner', \n    'Last Updated', \n    'Delete Target'\n  ];\n\n  sheet.appendRow(headers);\n  const headerRange = sheet.getRange(1, 1, 1, headers.length);\n  headerRange.setHorizontalAlignment('center');\n  headerRange.setVerticalAlignment('middle');\n\n  \/\/ Set background color for headers (light green)\n  headerRange.setBackground('#B7E1CD');\n\n  return sheet;\n}\n\nfunction appendFileDataForDeletionToSheet(sheet, file, row) {\n  const folderName = getFolderName(file);\n  const fileName = file.getName();\n  const fileLink = file.getUrl();\n  const owner = file.getOwner() ? file.getOwner().getEmail() : 'No Owner';\n  const lastUpdated = file.getLastUpdated();\n\n  \/\/ Add data to the sheet (file name as a hyperlink)\n  sheet.getRange(row, 1).setValue(folderName);\n  sheet.getRange(row, 2).setFormula(`=HYPERLINK(&quot;${fileLink}&quot;, &quot;${fileName}&quot;)`);\n  sheet.getRange(row, 3).setValue(owner);\n  sheet.getRange(row, 4).setValue(lastUpdated);\n  sheet.getRange(row, 5).insertCheckboxes(); \/\/ Add checkboxes for delete targets\n}\n\nfunction getFolderName(file) {\n  const parents = file.getParents();\n  return parents.hasNext() ? parents.next().getName() : 'Root';\n}\n\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listFilesForDeletion<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> ui <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> response <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> ui.<\/span><span style=\"color: #A6E22E\">prompt<\/span><span style=\"color: #F8F8F2\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Specify a Folder&#39;<\/span><span style=\"color: #F8F8F2\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Enter &quot;All Files in Drive&quot; or provide a folder name or folder ID:&#39;<\/span><span style=\"color: #F8F8F2\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    ui.ButtonSet.OK_CANCEL<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  );<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (response.<\/span><span style=\"color: #A6E22E\">getSelectedButton<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">===<\/span><span style=\"color: #F8F8F2\"> ui.Button.CANCEL) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    ui.<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Operation cancelled.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> input <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> response.<\/span><span style=\"color: #A6E22E\">getResponseText<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">trim<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ If &quot;All Files in Drive&quot; is entered, list all files; otherwise, list files in the specified folder<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (input <\/span><span style=\"color: #F92672\">===<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;All Files in Drive&#39;<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">listAllFilesForDeletion<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  } <\/span><span style=\"color: #F92672\">else<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">listFilesInFolderForDeletion<\/span><span style=\"color: #F8F8F2\">(input);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listAllFilesForDeletion<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> files <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFiles<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> row <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">while<\/span><span style=\"color: #F8F8F2\"> (files.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">()) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> file <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> files.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">appendFileDataForDeletionToSheet<\/span><span style=\"color: #F8F8F2\">(sheet, file, row);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    row<\/span><span style=\"color: #F92672\">++<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listFilesInFolderForDeletion<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">folderNameOrId<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> folder;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">try<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    folder <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFolderById<\/span><span style=\"color: #F8F8F2\">(folderNameOrId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  } <\/span><span style=\"color: #F92672\">catch<\/span><span style=\"color: #F8F8F2\"> (e) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> folders <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFoldersByName<\/span><span style=\"color: #F8F8F2\">(folderNameOrId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (folders.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">()) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      folder <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> folders.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    } <\/span><span style=\"color: #F92672\">else<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Folder not found.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> files <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> folder.<\/span><span style=\"color: #A6E22E\">getFiles<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> row <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">while<\/span><span style=\"color: #F8F8F2\"> (files.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">()) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> file <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> files.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">appendFileDataForDeletionToSheet<\/span><span style=\"color: #F8F8F2\">(sheet, file, row);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    row<\/span><span style=\"color: #F92672\">++<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheetName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Bulk File Deletion&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getSheetByName<\/span><span style=\"color: #F8F8F2\">(sheetName) <\/span><span style=\"color: #F92672\">||<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">insertSheet<\/span><span style=\"color: #F8F8F2\">(sheetName);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Clear and reset the sheet<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">clear<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set headers<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headers <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> [<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Folder Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;File Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Owner&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Last Updated&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Delete Target&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  ];<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">appendRow<\/span><span style=\"color: #F8F8F2\">(headers);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headerRange <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, headers.length);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setHorizontalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;center&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setVerticalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;middle&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set background color for headers (light green)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setBackground<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;#B7E1CD&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\"> sheet;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">appendFileDataForDeletionToSheet<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">sheet<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #FD971F; font-style: italic\">file<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #FD971F; font-style: italic\">row<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> folderName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">getFolderName<\/span><span style=\"color: #F8F8F2\">(file);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getName<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileLink <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getUrl<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> owner <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getOwner<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">?<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getOwner<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getEmail<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">:<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;No Owner&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> lastUpdated <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getLastUpdated<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Add data to the sheet (file name as a hyperlink)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(folderName);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setFormula<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">`=HYPERLINK(&quot;<\/span><span style=\"color: #F92672\">${<\/span><span style=\"color: #F8F8F2\">fileLink<\/span><span style=\"color: #F92672\">}<\/span><span style=\"color: #E6DB74\">&quot;, &quot;<\/span><span style=\"color: #F92672\">${<\/span><span style=\"color: #F8F8F2\">fileName<\/span><span style=\"color: #F92672\">}<\/span><span style=\"color: #E6DB74\">&quot;)`<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">3<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(owner);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">4<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(lastUpdated);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">insertCheckboxes<\/span><span style=\"color: #F8F8F2\">(); <\/span><span style=\"color: #88846F\">\/\/ Add checkboxes for delete targets<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">getFolderName<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">file<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> parents <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getParents<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\"> parents.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">?<\/span><span style=\"color: #F8F8F2\"> parents.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getName<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">:<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Root&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">Script 1 Description<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<dl class=\"swell-block-dl\">\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>listFilesForDeletion<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function prompts the user to specify a folder name, folder ID, or select <strong>&#8220;All Files in Drive&#8221;<\/strong>. It then lists all files within the specified folder or across the entire Drive.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function listFilesForDeletion() {\n  const ui = SpreadsheetApp.getUi();\n  const response = ui.prompt(\n    'Specify a Folder',\n    'Enter &quot;All Files in Drive&quot; or provide a folder name or folder ID:',\n    ui.ButtonSet.OK_CANCEL\n  );\n\n  if (response.getSelectedButton() === ui.Button.CANCEL) {\n    ui.alert('Operation cancelled.');\n    return;\n  }\n\n  const input = response.getResponseText().trim();\n\n  \/\/ If &quot;All Files in Drive&quot; is entered, list all files; otherwise, list files in the specified folder\n  if (input === 'All Files in Drive') {\n    listAllFilesForDeletion();\n  } else {\n    listFilesInFolderForDeletion(input);\n  }\n}\n\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listFilesForDeletion<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> ui <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> response <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> ui.<\/span><span style=\"color: #A6E22E\">prompt<\/span><span style=\"color: #F8F8F2\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Specify a Folder&#39;<\/span><span style=\"color: #F8F8F2\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Enter &quot;All Files in Drive&quot; or provide a folder name or folder ID:&#39;<\/span><span style=\"color: #F8F8F2\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    ui.ButtonSet.OK_CANCEL<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  );<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (response.<\/span><span style=\"color: #A6E22E\">getSelectedButton<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">===<\/span><span style=\"color: #F8F8F2\"> ui.Button.CANCEL) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    ui.<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Operation cancelled.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> input <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> response.<\/span><span style=\"color: #A6E22E\">getResponseText<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">trim<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ If &quot;All Files in Drive&quot; is entered, list all files; otherwise, list files in the specified folder<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (input <\/span><span style=\"color: #F92672\">===<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;All Files in Drive&#39;<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">listAllFilesForDeletion<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  } <\/span><span style=\"color: #F92672\">else<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">listFilesInFolderForDeletion<\/span><span style=\"color: #F8F8F2\">(input);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The function uses <code>ui.prompt()<\/code> to request user input, allowing the user to specify a folder name or folder ID to determine the scope of the file listing.<\/li>\n\n\n\n<li>If the input is <strong>&#8220;All Files in Drive&#8221;<\/strong>, the <code>listAllFilesForDeletion()<\/code> function is called to list all files in the Drive.<\/li>\n\n\n\n<li>For any other input, the <code>listFilesInFolderForDeletion()<\/code> function is called to list files within the specified folder.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><code>listAllFilesForDeletion<\/code> Function<\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function lists all files in Google Drive.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function listAllFilesForDeletion() {\n  const sheet = setupDeletionSheet();\n  const files = DriveApp.getFiles();\n  let row = 2;\n\n  while (files.hasNext()) {\n    const file = files.next();\n    appendFileDataForDeletionToSheet(sheet, file, row);\n    row++;\n  }\n}\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listAllFilesForDeletion<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> files <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFiles<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> row <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">while<\/span><span style=\"color: #F8F8F2\"> (files.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">()) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> file <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> files.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #A6E22E\">appendFileDataForDeletionToSheet<\/span><span style=\"color: #F8F8F2\">(sheet, file, row);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    row<\/span><span style=\"color: #F92672\">++<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It uses <code>DriveApp.getFiles()<\/code> to retrieve all files in Google Drive and adds them to the spreadsheet.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>listFilesInFolderForDeletion<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function lists the files within the specified folder.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function listFilesInFolderForDeletion(folderNameOrId) {\n  const sheet = setupDeletionSheet();\n  let folder;\n\n  try {\n    folder = DriveApp.getFolderById(folderNameOrId);\n  } catch (e) {\n    const folders = DriveApp.getFoldersByName(folderNameOrId);\n    if (folders.hasNext()) {\n      folder = folders.next();\n    } else {\n      SpreadsheetApp.getUi().alert('Folder not found.');\n      return;\n    }\n  }\n\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">listFilesInFolderForDeletion<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">folderNameOrId<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> folder;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">try<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    folder <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFolderById<\/span><span style=\"color: #F8F8F2\">(folderNameOrId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  } <\/span><span style=\"color: #F92672\">catch<\/span><span style=\"color: #F8F8F2\"> (e) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> folders <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFoldersByName<\/span><span style=\"color: #F8F8F2\">(folderNameOrId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (folders.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">()) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      folder <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> folders.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    } <\/span><span style=\"color: #F92672\">else<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Folder not found.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It retrieves the target folder based on the folder ID or folder name provided by the user.<\/li>\n\n\n\n<li>The files within the specified folder are then fetched using the <code>getFiles()<\/code> method and listed in the spreadsheet.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>setupDeletionSheet<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function sets up the spreadsheet to be used for listing files.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function setupDeletionSheet() {\n  const sheetName = 'Bulk File Deletion';\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName) || SpreadsheetApp.getActiveSpreadsheet().insertSheet(sheetName);\n\n  \/\/ Clear and reset the sheet\n  sheet.clear();\n\n  \/\/ Set headers\n  const headers = [\n    'Folder Name', \n    'File Name', \n    'Owner', \n    'Last Updated', \n    'Delete Target'\n  ];\n\n  sheet.appendRow(headers);\n  const headerRange = sheet.getRange(1, 1, 1, headers.length);\n  headerRange.setHorizontalAlignment('center');\n  headerRange.setVerticalAlignment('middle');\n\n  \/\/ Set background color for headers (light green)\n  headerRange.setBackground('#B7E1CD');\n\n  return sheet;\n}\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">setupDeletionSheet<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheetName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Bulk File Deletion&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getSheetByName<\/span><span style=\"color: #F8F8F2\">(sheetName) <\/span><span style=\"color: #F92672\">||<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">insertSheet<\/span><span style=\"color: #F8F8F2\">(sheetName);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Clear and reset the sheet<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">clear<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set headers<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headers <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> [<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Folder Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;File Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Owner&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Last Updated&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Delete Target&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  ];<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">appendRow<\/span><span style=\"color: #F8F8F2\">(headers);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headerRange <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, headers.length);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setHorizontalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;center&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setVerticalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;middle&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set background color for headers (light green)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setBackground<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;#B7E1CD&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\"> sheet;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It retrieves or creates a sheet named <strong>&#8220;Bulk File Deletion&#8221;<\/strong> and initializes it.<\/li>\n\n\n\n<li>The header row (<strong>Folder Name, File Name, Owner, Last Updated, Delete Target<\/strong>) is set up, and a background color is applied to enhance visual clarity.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>appendFileDataForDeletionToSheet<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function adds information for each file to the spreadsheet.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function appendFileDataForDeletionToSheet(sheet, file, row) {\n  const folderName = getFolderName(file);\n  const fileName = file.getName();\n  const fileLink = file.getUrl();\n  const owner = file.getOwner() ? file.getOwner().getEmail() : 'No Owner';\n  const lastUpdated = file.getLastUpdated();\n\n  \/\/ Add data to the sheet (file name as a hyperlink)\n  sheet.getRange(row, 1).setValue(folderName);\n  sheet.getRange(row, 2).setFormula(`=HYPERLINK(&quot;${fileLink}&quot;, &quot;${fileName}&quot;)`);\n  sheet.getRange(row, 3).setValue(owner);\n  sheet.getRange(row, 4).setValue(lastUpdated);\n  sheet.getRange(row, 5).insertCheckboxes(); \/\/ Add checkboxes for delete targets\n}\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">appendFileDataForDeletionToSheet<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">sheet<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #FD971F; font-style: italic\">file<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #FD971F; font-style: italic\">row<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> folderName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">getFolderName<\/span><span style=\"color: #F8F8F2\">(file);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getName<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileLink <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getUrl<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> owner <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getOwner<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">?<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getOwner<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getEmail<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">:<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;No Owner&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> lastUpdated <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getLastUpdated<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Add data to the sheet (file name as a hyperlink)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(folderName);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setFormula<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">`=HYPERLINK(&quot;<\/span><span style=\"color: #F92672\">${<\/span><span style=\"color: #F8F8F2\">fileLink<\/span><span style=\"color: #F92672\">}<\/span><span style=\"color: #E6DB74\">&quot;, &quot;<\/span><span style=\"color: #F92672\">${<\/span><span style=\"color: #F8F8F2\">fileName<\/span><span style=\"color: #F92672\">}<\/span><span style=\"color: #E6DB74\">&quot;)`<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">3<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(owner);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">4<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(lastUpdated);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(row, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">insertCheckboxes<\/span><span style=\"color: #F8F8F2\">(); <\/span><span style=\"color: #88846F\">\/\/ Add checkboxes for delete targets<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It records the file&#8217;s <strong>folder name<\/strong>, <strong>file name (with a hyperlink)<\/strong>, <strong>owner<\/strong>, and <strong>last updated date<\/strong> in the spreadsheet, and adds a checkbox to mark the file as a <strong>delete target<\/strong>.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>getFolderName<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function retrieves the name of the folder the file belongs to.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function getFolderName(file) {\n  const parents = file.getParents();\n  return parents.hasNext() ? parents.next().getName() : 'Root';\n}\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">getFolderName<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #FD971F; font-style: italic\">file<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> parents <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> file.<\/span><span style=\"color: #A6E22E\">getParents<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\"> parents.<\/span><span style=\"color: #A6E22E\">hasNext<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">?<\/span><span style=\"color: #F8F8F2\"> parents.<\/span><span style=\"color: #A6E22E\">next<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getName<\/span><span style=\"color: #F8F8F2\">() <\/span><span style=\"color: #F92672\">:<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Root&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If the file has a parent folder, it returns the folder&#8217;s name; otherwise, it displays <strong>&#8220;Root&#8221;<\/strong>.<\/li>\n<\/ul>\n<\/dd>\n<\/dl>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Save the Script<\/div><div class=\"swell-block-step__body\">\n<figure class=\"wp-block-image size-large u-mb-ctrl u-mb-40\"><img decoding=\"async\" width=\"1024\" height=\"423\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1-1024x423.png\" alt=\"\" class=\"wp-image-17150\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1-1024x423.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1-300x124.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1-768x317.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1-1536x635.png 1536w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-1.png 1621w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">After writing the script, save it with a name.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">(Example: <strong>&#8220;File Deletion Selector&#8221;<\/strong>)<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Run the Script<\/div><div class=\"swell-block-step__body\">\n<figure class=\"wp-block-image size-large u-mb-ctrl u-mb-40\"><img decoding=\"async\" width=\"1024\" height=\"423\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2-1024x423.png\" alt=\"\" class=\"wp-image-17151\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2-1024x423.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2-300x124.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2-768x317.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2-1536x635.png 1536w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/deacffbaac2e49a7844c83f15127efd7-2.png 1621w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">Run the script.<\/p>\n\n\n\n<div class=\"wp-block-group is-style-big_icon_memo u-mb-ctrl u-mb-60\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\">If you&#8217;re running the script for the first time, you need to authorize it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Therefore, press &#8220;<strong>Review Permissions.<\/strong>&#8220;<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-50\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" width=\"882\" height=\"345\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79.png\" alt=\"\" class=\"wp-image-15938\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79.png 882w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79-300x117.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79-768x300.png 768w\" sizes=\"(max-width: 882px) 100vw, 882px\" \/><\/figure>\n<\/div>\n\n\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">Detailed Authorization Steps<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<p class=\"wp-block-paragraph\"><strong>Press &#8220;Advanced.&#8221;<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full u-mb-ctrl u-mb-50\"><img decoding=\"async\" width=\"1272\" height=\"688\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d.jpg\" alt=\"\" class=\"wp-image-15939\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d.jpg 1272w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-300x162.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-1024x554.jpg 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-768x415.jpg 768w\" sizes=\"(max-width: 1272px) 100vw, 1272px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Press &#8220;Go to Untitled project (Unsafe).&#8221;<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-50\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" width=\"1305\" height=\"893\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9.jpg\" alt=\"\" class=\"wp-image-15940\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9.jpg 1305w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-300x205.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-1024x701.jpg 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-768x526.jpg 768w\" sizes=\"(max-width: 1305px) 100vw, 1305px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>After that, press &#8220;Allow.&#8221;<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"955\" height=\"543\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049.jpg\" alt=\"\" class=\"wp-image-15941\" style=\"width:566px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049.jpg 955w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049-300x171.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049-768x437.jpg 768w\" sizes=\"(max-width: 955px) 100vw, 955px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">All Files in Drive&#8221; or Specify a Folder<\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"931\" height=\"561\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/c549c54f6983da8a2bc0479196ee3f6a.png\" alt=\"\" class=\"wp-image-17152\" style=\"width:531px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/c549c54f6983da8a2bc0479196ee3f6a.png 931w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/c549c54f6983da8a2bc0479196ee3f6a-300x181.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/c549c54f6983da8a2bc0479196ee3f6a-768x463.png 768w\" sizes=\"(max-width: 931px) 100vw, 931px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">When the script is executed, a popup will appear first.<br>Here, you can enter either <strong>&#8220;All Files in Drive&#8221;<\/strong> or a specific folder name or folder ID.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">A New Sheet is Created and Files are Listed<\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"442\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-44-1024x442.png\" alt=\"\" class=\"wp-image-17153\" style=\"width:641px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-44-1024x442.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-44-300x129.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-44-768x331.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-44.png 1199w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">When the script is executed, a new sheet is created.<\/p>\n\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\"><strong>Sheet Name:<\/strong> &#8220;Bulk File Deletion&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The created sheet will list the following details:<\/p>\n\n\n\n<figure class=\"wp-block-table is-all-centered\"><table><thead style=\"--thead-color--bg:var(--color_pale03);--thead-color--txt:var(--swl-text_color--black)\"><tr><th>Column<\/th><th>Item<\/th><\/tr><\/thead><tbody><tr><td>Column A<\/td><td>Folder Name<\/td><\/tr><tr><td>Column B<\/td><td>File Name<\/td><\/tr><tr><td>Column C<\/td><td>Owner<\/td><\/tr><tr><td>Column D<\/td><td>Last Updated<\/td><\/tr><tr><td>Column E<\/td><td>Delete Target<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading u-mb-ctrl u-mb-30\"><strong>Script 2: Delete Selected Files<\/strong><\/h3>\n\n\n\n<p class=\"u-mb-ctrl u-mb-50 wp-block-paragraph\">This script allows you to select files from the listed ones and delete them in bulk.<\/p>\n\n\n\n<div class=\"swell-block-step u-mb-ctrl u-mb-60\" data-num-style=\"circle\">\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\"><strong>Select Files to Delete<\/strong><\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"475\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-1024x475.png\" alt=\"\" class=\"wp-image-17155\" style=\"width:643px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-1024x475.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-300x139.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46-768x356.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-46.png 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Check the checkboxes for the files you want to delete.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Open Apps Script Editor<\/div><div class=\"swell-block-step__body\">\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">The process is the same as in <strong>Script 1<\/strong>.<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"933\" height=\"591\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d.png\" alt=\"\" class=\"wp-image-16537\" style=\"width:447px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d.png 933w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d-300x190.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/98efceb7a335447039dff05eb8d70d3d-768x486.png 768w\" sizes=\"(max-width: 933px) 100vw, 933px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Open a Google Spreadsheet and click on \u201c<strong>Extensions<\/strong>\u201d in the menu, then \u201c<strong>Apps Script<\/strong>\u201d to open the Apps Script editor.<\/p>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\"><strong>Create the Script<\/strong><\/div><div class=\"swell-block-step__body\">\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">Paste the following script.<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large\"><img decoding=\"async\" width=\"1024\" height=\"472\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-1024x472.png\" alt=\"\" class=\"wp-image-16191\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-1024x472.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-300x138.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662-768x354.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/e5e524d3405a7a1c3cfaaf3f2b1cc662.png 1387w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">Since the default <code>function myFunction() {}<\/code> is present, delete it and replace it with the script below.<\/p>\n<\/div><\/details>\n<\/div>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function deleteSelectedFiles() {\n  const sheetName = 'Bulk File Deletion';\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);\n  if (!sheet) {\n    SpreadsheetApp.getUi().alert('The sheet &quot;Bulk File Deletion&quot; was not found.');\n    return;\n  }\n  \n  \/\/ Set up headers\n  const headers = [\n    'Folder Name', \n    'File Name', \n    'Owner', \n    'Last Updated', \n    'Delete Target', \n    'Deleted At'\n  ];\n  \n  sheet.getRange(1, 1, 1, headers.length).setValues([headers]);\n  \n  const headerRange = sheet.getRange(1, 1, 1, headers.length);\n  headerRange.setHorizontalAlignment('center');\n  headerRange.setVerticalAlignment('middle');\n  headerRange.setBackground('#B7E1CD'); \/\/ Light Green\n  \n  const lastRow = sheet.getLastRow();\n  for (let i = 2; i &lt;= lastRow; i++) {\n    const checkbox = sheet.getRange(i, 5).getValue();\n    \n    if (checkbox) { \/\/ If checkbox in column E is checked\n      const fileLink = sheet.getRange(i, 2).getFormula();\n      const fileIdMatch = fileLink.match(\/\\\/d\\\/([a-zA-Z0-9-_]+)\/);\n      \n      if (fileIdMatch) {\n        try {\n          const fileId = fileIdMatch[1];\n          const file = DriveApp.getFileById(fileId);\n          \n          \/\/ Move the file to Trash\n          file.setTrashed(true);\n          \n          \/\/ Add timestamp in column F\n          sheet.getRange(i, 6).setValue(new Date());\n          \n          \/\/ Update folder name to &quot;Trash&quot;\n          sheet.getRange(i, 1).setValue('Trash');\n          \n          \/\/ Reset the checkbox in column E\n          sheet.getRange(i, 5).setValue(false);\n        } catch (e) {\n          console.error('Error occurred while deleting the file:', e.message);\n        }\n      } else {\n        console.warn('Could not extract file ID from the file link:', fileLink);\n      }\n    }\n  }\n}\n\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">deleteSelectedFiles<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheetName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Bulk File Deletion&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getSheetByName<\/span><span style=\"color: #F8F8F2\">(sheetName);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (<\/span><span style=\"color: #F92672\">!<\/span><span style=\"color: #F8F8F2\">sheet) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;The sheet &quot;Bulk File Deletion&quot; was not found.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set up headers<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headers <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> [<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Folder Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;File Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Owner&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Last Updated&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Delete Target&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Deleted At&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  ];<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, headers.length).<\/span><span style=\"color: #A6E22E\">setValues<\/span><span style=\"color: #F8F8F2\">([headers]);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headerRange <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, headers.length);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setHorizontalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;center&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setVerticalAlignment<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;middle&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  headerRange.<\/span><span style=\"color: #A6E22E\">setBackground<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;#B7E1CD&#39;<\/span><span style=\"color: #F8F8F2\">); <\/span><span style=\"color: #88846F\">\/\/ Light Green<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> lastRow <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getLastRow<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">for<\/span><span style=\"color: #F8F8F2\"> (<\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> i <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">; i <\/span><span style=\"color: #F92672\">&lt;=<\/span><span style=\"color: #F8F8F2\"> lastRow; i<\/span><span style=\"color: #F92672\">++<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> checkbox <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">getValue<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (checkbox) { <\/span><span style=\"color: #88846F\">\/\/ If checkbox in column E is checked<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileLink <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">getFormula<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileIdMatch <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> fileLink.<\/span><span style=\"color: #A6E22E\">match<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">\/<\/span><span style=\"color: #AE81FF\">\\\/<\/span><span style=\"color: #E6DB74\">d<\/span><span style=\"color: #AE81FF\">\\\/<\/span><span style=\"color: #E6DB74\">(<\/span><span style=\"color: #AE81FF\">[a-zA-Z0-9-_]<\/span><span style=\"color: #F92672\">+<\/span><span style=\"color: #E6DB74\">)\/<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (fileIdMatch) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        <\/span><span style=\"color: #F92672\">try<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileId <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> fileIdMatch[<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">];<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> file <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFileById<\/span><span style=\"color: #F8F8F2\">(fileId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Move the file to Trash<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          file.<\/span><span style=\"color: #A6E22E\">setTrashed<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">true<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Add timestamp in column F<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">6<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #F92672\">new<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">Date<\/span><span style=\"color: #F8F8F2\">());<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Update folder name to &quot;Trash&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Trash&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Reset the checkbox in column E<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">false<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        } <\/span><span style=\"color: #F92672\">catch<\/span><span style=\"color: #F8F8F2\"> (e) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          console.<\/span><span style=\"color: #A6E22E\">error<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Error occurred while deleting the file:&#39;<\/span><span style=\"color: #F8F8F2\">, e.message);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      } <\/span><span style=\"color: #F92672\">else<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        console.<\/span><span style=\"color: #A6E22E\">warn<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Could not extract file ID from the file link:&#39;<\/span><span style=\"color: #F8F8F2\">, fileLink);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">Script Description<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<dl class=\"swell-block-dl\">\n<dt class=\"swell-block-dl__dt\"><strong><strong><code>deleteSelectedFiles<\/code> Function<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">This function deletes the files marked with checkboxes in the spreadsheet.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"function deleteSelectedFiles() {\n  const sheetName = 'Bulk File Deletion';\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);\n  if (!sheet) {\n    SpreadsheetApp.getUi().alert('The sheet &quot;Bulk File Deletion&quot; was not found.');\n    return;\n  }\n  \n  \/\/ Set up headers\n  const headers = [\n    'Folder Name', \n    'File Name', \n    'Owner', \n    'Last Updated', \n    'Delete Target', \n    'Deleted At'\n  ];\n  \n  sheet.getRange(1, 1, 1, headers.length).setValues([headers]);\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #66D9EF; font-style: italic\">function<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">deleteSelectedFiles<\/span><span style=\"color: #F8F8F2\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheetName <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #E6DB74\">&#39;Bulk File Deletion&#39;<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> sheet <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getActiveSpreadsheet<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">getSheetByName<\/span><span style=\"color: #F8F8F2\">(sheetName);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (<\/span><span style=\"color: #F92672\">!<\/span><span style=\"color: #F8F8F2\">sheet) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    SpreadsheetApp.<\/span><span style=\"color: #A6E22E\">getUi<\/span><span style=\"color: #F8F8F2\">().<\/span><span style=\"color: #A6E22E\">alert<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;The sheet &quot;Bulk File Deletion&quot; was not found.&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">return<\/span><span style=\"color: #F8F8F2\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #88846F\">\/\/ Set up headers<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> headers <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> [<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Folder Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;File Name&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Owner&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Last Updated&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Delete Target&#39;<\/span><span style=\"color: #F8F8F2\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #E6DB74\">&#39;Deleted At&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  ];<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">, headers.length).<\/span><span style=\"color: #A6E22E\">setValues<\/span><span style=\"color: #F8F8F2\">([headers]);<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It retrieves the <strong>&#8220;Bulk File Deletion&#8221;<\/strong> sheet and reviews the listed file information.<\/li>\n\n\n\n<li>Files marked for deletion are identified using the <code>getRange()<\/code> method, and the process continues only if the checkbox is selected.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong>Deletion Process<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">Files with selected checkboxes are deleted.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"  const lastRow = sheet.getLastRow();\n  for (let i = 2; i &lt;= lastRow; i++) {\n    const checkbox = sheet.getRange(i, 5).getValue();\n    \n    if (checkbox) { \/\/ If checkbox in column E is checked\n      const fileLink = sheet.getRange(i, 2).getFormula();\n      const fileIdMatch = fileLink.match(\/\\\/d\\\/([a-zA-Z0-9-_]+)\/);\n      \n      if (fileIdMatch) {\n        try {\n          const fileId = fileIdMatch[1];\n          const file = DriveApp.getFileById(fileId);\n          \n          \/\/ Move the file to Trash\n          file.setTrashed(true);\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> lastRow <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getLastRow<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">  <\/span><span style=\"color: #F92672\">for<\/span><span style=\"color: #F8F8F2\"> (<\/span><span style=\"color: #66D9EF; font-style: italic\">let<\/span><span style=\"color: #F8F8F2\"> i <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">; i <\/span><span style=\"color: #F92672\">&lt;=<\/span><span style=\"color: #F8F8F2\"> lastRow; i<\/span><span style=\"color: #F92672\">++<\/span><span style=\"color: #F8F8F2\">) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> checkbox <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">getValue<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">    <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (checkbox) { <\/span><span style=\"color: #88846F\">\/\/ If checkbox in column E is checked<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileLink <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">2<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">getFormula<\/span><span style=\"color: #F8F8F2\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileIdMatch <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> fileLink.<\/span><span style=\"color: #A6E22E\">match<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">\/<\/span><span style=\"color: #AE81FF\">\\\/<\/span><span style=\"color: #E6DB74\">d<\/span><span style=\"color: #AE81FF\">\\\/<\/span><span style=\"color: #E6DB74\">(<\/span><span style=\"color: #AE81FF\">[a-zA-Z0-9-_]<\/span><span style=\"color: #F92672\">+<\/span><span style=\"color: #E6DB74\">)\/<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">      <\/span><span style=\"color: #F92672\">if<\/span><span style=\"color: #F8F8F2\"> (fileIdMatch) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        <\/span><span style=\"color: #F92672\">try<\/span><span style=\"color: #F8F8F2\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> fileId <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> fileIdMatch[<\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">];<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #66D9EF; font-style: italic\">const<\/span><span style=\"color: #F8F8F2\"> file <\/span><span style=\"color: #F92672\">=<\/span><span style=\"color: #F8F8F2\"> DriveApp.<\/span><span style=\"color: #A6E22E\">getFileById<\/span><span style=\"color: #F8F8F2\">(fileId);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Move the file to Trash<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          file.<\/span><span style=\"color: #A6E22E\">setTrashed<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">true<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The file ID is extracted from each file&#8217;s link, and the corresponding file is retrieved using <code>DriveApp.getFileById()<\/code>.<\/li>\n\n\n\n<li>The <code>setTrashed(true)<\/code> method is then used to move the file to the Trash.<\/li>\n<\/ul>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\"><strong><strong>Record of Deleted Files<\/strong><\/strong><\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">A timestamp is added to indicate when the file was successfully deleted.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" data-code=\"          \/\/ Add timestamp in column F\n          sheet.getRange(i, 6).setValue(new Date());\n          \n          \/\/ Update folder name to &quot;Trash&quot;\n          sheet.getRange(i, 1).setValue('Trash');\n          \n          \/\/ Reset the checkbox in column E\n          sheet.getRange(i, 5).setValue(false);\n        } catch (e) {\n          console.error('Error occurred while deleting the file:', e.message);\n        }\" style=\"color:#F8F8F2;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki monokai\" style=\"background-color: #272822\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Add timestamp in column F<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">6<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #F92672\">new<\/span><span style=\"color: #F8F8F2\"> <\/span><span style=\"color: #A6E22E\">Date<\/span><span style=\"color: #F8F8F2\">());<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Update folder name to &quot;Trash&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">1<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Trash&#39;<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          <\/span><span style=\"color: #88846F\">\/\/ Reset the checkbox in column E<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          sheet.<\/span><span style=\"color: #A6E22E\">getRange<\/span><span style=\"color: #F8F8F2\">(i, <\/span><span style=\"color: #AE81FF\">5<\/span><span style=\"color: #F8F8F2\">).<\/span><span style=\"color: #A6E22E\">setValue<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #AE81FF\">false<\/span><span style=\"color: #F8F8F2\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        } <\/span><span style=\"color: #F92672\">catch<\/span><span style=\"color: #F8F8F2\"> (e) {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">          console.<\/span><span style=\"color: #A6E22E\">error<\/span><span style=\"color: #F8F8F2\">(<\/span><span style=\"color: #E6DB74\">&#39;Error occurred while deleting the file:&#39;<\/span><span style=\"color: #F8F8F2\">, e.message);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F2\">        }<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The deletion timestamp is recorded in the <strong>&#8220;Deleted At&#8221;<\/strong> column of the spreadsheet, serving as a deletion history.<\/li>\n\n\n\n<li>The delete target checkbox is reset, and the folder name is updated to <strong>&#8220;Trash&#8221;<\/strong>.<\/li>\n<\/ul>\n<\/dd>\n<\/dl>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Save the Script<\/div><div class=\"swell-block-step__body\">\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">The process is the same as in <strong>Script 1<\/strong>.<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<figure class=\"wp-block-image size-large u-mb-ctrl u-mb-40\"><img decoding=\"async\" width=\"1024\" height=\"465\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1024x465.png\" alt=\"\" class=\"wp-image-17156\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1024x465.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-300x136.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-768x349.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1536x697.png 1536w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc.png 1591w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">After writing the script, save it with a name.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">(Example: <strong>&#8220;Bulk File Deletion&#8221;<\/strong>)<\/p>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\">Run the Script<\/div><div class=\"swell-block-step__body\">\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">The process is the same as in <strong>Script 1<\/strong>.<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<figure class=\"wp-block-image size-large u-mb-ctrl u-mb-40\"><img decoding=\"async\" width=\"1024\" height=\"465\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1-1024x465.png\" alt=\"\" class=\"wp-image-17157\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1-1024x465.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1-300x136.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1-768x349.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1-1536x697.png 1536w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/1707622b5b65a828a54f37695d0dfbcc-1.png 1591w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"u-mb-ctrl u-mb-30 wp-block-paragraph\">Run the script.<\/p>\n\n\n\n<div class=\"wp-block-group is-style-big_icon_memo u-mb-ctrl u-mb-60\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\">If you&#8217;re running the script for the first time, you need to authorize it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Therefore, press &#8220;<strong>Review Permissions.<\/strong>&#8220;<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-50\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" width=\"882\" height=\"345\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79.png\" alt=\"\" class=\"wp-image-15938\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79.png 882w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79-300x117.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/image-79-768x300.png 768w\" sizes=\"(max-width: 882px) 100vw, 882px\" \/><\/figure>\n<\/div>\n\n\n<div class=\"swell-block-accordion\">\n<details class=\"swell-block-accordion__item\" data-swl-acc=\"wrapper\"><summary class=\"swell-block-accordion__title\" data-swl-acc=\"header\"><span class=\"swell-block-accordion__label\">Detailed Authorization Steps<\/span><span class=\"swell-block-accordion__icon c-switchIconBtn\" data-swl-acc=\"icon\" aria-hidden=\"true\" data-opened=\"false\"><i class=\"__icon--closed icon-caret-down\"><\/i><i class=\"__icon--opened icon-caret-up\"><\/i><\/span><\/summary><div class=\"swell-block-accordion__body\" data-swl-acc=\"body\">\n<p class=\"wp-block-paragraph\"><strong>Press &#8220;Advanced.&#8221;<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full u-mb-ctrl u-mb-50\"><img decoding=\"async\" width=\"1272\" height=\"688\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d.jpg\" alt=\"\" class=\"wp-image-15939\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d.jpg 1272w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-300x162.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-1024x554.jpg 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/188993dfac23ed4b35c326d75de2796d-768x415.jpg 768w\" sizes=\"(max-width: 1272px) 100vw, 1272px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Press &#8220;Go to Untitled project (Unsafe).&#8221;<\/strong><\/p>\n\n\n<div class=\"wp-block-image u-mb-ctrl u-mb-50\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" width=\"1305\" height=\"893\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9.jpg\" alt=\"\" class=\"wp-image-15940\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9.jpg 1305w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-300x205.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-1024x701.jpg 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/b7775751f92380510b389302eaafe1b9-768x526.jpg 768w\" sizes=\"(max-width: 1305px) 100vw, 1305px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>After that, press &#8220;Allow.&#8221;<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full is-resized\"><img decoding=\"async\" width=\"955\" height=\"543\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049.jpg\" alt=\"\" class=\"wp-image-15941\" style=\"width:566px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049.jpg 955w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049-300x171.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/11\/7ebb34b4d2c42fa532ad1c35c1ec1049-768x437.jpg 768w\" sizes=\"(max-width: 955px) 100vw, 955px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n<\/div><\/details>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"swell-block-step__item\"><div class=\"swell-block-step__number u-bg-main\"><span class=\"__label\">STEP<\/span><\/div><div class=\"swell-block-step__title u-fz-l\"><strong>Selected Files Are Deleted<\/strong><\/div><div class=\"swell-block-step__body\"><div class=\"wp-block-image u-mb-ctrl u-mb-40\">\n<figure class=\"alignleft size-large is-resized\"><img decoding=\"async\" width=\"1024\" height=\"404\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-1024x404.png\" alt=\"\" class=\"wp-image-17158\" style=\"width:681px;height:auto\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-1024x404.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-300x118.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47-768x303.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/image-47.png 1398w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">When the script is executed, the files with selected checkboxes are deleted.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Column A<\/strong>: The folder name is updated to <strong>&#8220;Trash&#8221;<\/strong>.<\/li>\n\n\n\n<li><strong>Column E<\/strong>: The delete target checkbox is reset.<\/li>\n\n\n\n<li><strong>Column F<\/strong>: A timestamp (deletion date) is added in the <strong>&#8220;Deleted At&#8221;<\/strong> column.<\/li>\n<\/ul>\n<\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading u-mb-ctrl u-mb-30\"><strong>Notes<\/strong><\/h2>\n\n\n\n<dl class=\"swell-block-dl is-style-border u-mb-ctrl u-mb-60\">\n<dt class=\"swell-block-dl__dt\">File Access Permissions<\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">Sufficient permissions are required to execute the script.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Files cannot be deleted if you are not the owner.<\/p>\n<\/dd>\n\n\n\n<dt class=\"swell-block-dl__dt\">Confirm Before Permanent Deletion<\/dt>\n\n\n\n<dd class=\"swell-block-dl__dd\">\n<p class=\"wp-block-paragraph\">Files deleted by the script are moved to the <strong>Trash<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is recommended to perform a final check before permanently deleting files.<\/p>\n<\/dd>\n<\/dl>\n\n\n\n<h2 class=\"wp-block-heading u-mb-ctrl u-mb-30\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Using Google Apps Script to efficiently organize files in Google Drive can save you significant time.<\/p>\n\n\n\n<p class=\"u-mb-ctrl u-mb-40 wp-block-paragraph\">If you identify workflows that can be automated with Apps Script, take advantage of them to boost productivity!<\/p>\n\n\n<div class=\"swell-block-postLink u-mb-ctrl u-mb-30\">\t\t\t<div class=\"p-blogCard -internal\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u3042\u308f\u305b\u3066\u8aad\u307f\u305f\u3044<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/10\/9add5d490b0458ef413f8820e4238f70-300x158.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/84office.jp\/folder-file-copy-gas\/\">Google\u30c9\u30e9\u30a4\u30d6\u306e\u30d5\u30a9\u30eb\u30c0\u5185\u30d5\u30a1\u30a4\u30eb\u3092\u307e\u3068\u3081\u3066\u30b3\u30d4\u30fc\uff01\u30b9\u30d7\u30ec\u30c3\u30c9\u30b7\u30fc\u30c8\u00d7GAS\u3067\u4f5c\u696d\u52b9\u7387\u5316<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">\u3053\u306e\u8a18\u4e8b\u3092\u304a\u3059\u3059\u3081\u306e\u65b9 \u4e00\u3064\u306e\u30d5\u30a9\u30eb\u30c0\u5185\u306b\u30d5\u30a1\u30a4\u30eb\u304c\u591a\u6570\u3042\u308b\u65b9 \u30d5\u30a9\u30eb\u30c0\u5185\u306e\u30d5\u30a1\u30a4\u30eb\u30b3\u30d4\u30fc\u3092\u81ea\u52d5\u5316\u3057\u305f\u3044\u65b9 Google\u30c9\u30e9\u30a4\u30d6\u3084\u30b9\u30d7\u30ec\u30c3\u30c9\u30b7\u30fc\u30c8\u3092\u4f7f\u3063\u3066\u3044\u3066\u3001\u300c\u30d5\u30a9&#8230;<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink u-mb-ctrl u-mb-30\">\t\t\t<div class=\"p-blogCard -internal\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u3042\u308f\u305b\u3066\u8aad\u307f\u305f\u3044<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/e9a4a320bee4a411fd943416aa77e65a-300x158.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/84office.jp\/en\/file-access-rights-change-setup\/\">Effortlessly Manage and Modify Spreadsheet Permissions Using Google Apps Script: Preparation Guide<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">Have you ever struggled with the tedious task of reviewing and modifying sharing settings for individual files, such as spreadsheets or documents? This proce&#8230;<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"p-postListWrap\"><ul class=\"p-postList -type-card -pc-col3 -sp-col1\"><li class=\"p-postList__item\">\n\t<a href=\"https:\/\/84office.jp\/en\/get-youtube-data-api\/\" class=\"p-postList__link\">\n\t\t<div class=\"p-postList__thumb c-postThumb\">\n\t<figure class=\"c-postThumb__figure\">\n\t\t<img decoding=\"async\" width=\"1024\" height=\"538\"  src=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/2e50637a1d40175ef3385963e05ec2a8-1024x538.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/2e50637a1d40175ef3385963e05ec2a8-1024x538.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/2e50637a1d40175ef3385963e05ec2a8-300x158.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/2e50637a1d40175ef3385963e05ec2a8-768x403.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2024\/12\/2e50637a1d40175ef3385963e05ec2a8.png 1200w\" sizes=\"auto, (min-width: 960px) 400px, 100vw\" loading=\"lazy\" >\t<\/figure>\n\t\t\t<span class=\"c-postThumb__cat icon-folder\" data-cat-id=\"12\">Google Sheets<\/span>\n\t<\/div>\n\t\t\t\t\t<div class=\"p-postList__body\">\n\t\t\t\t<h2 class=\"p-postList__title\">YouTube API Key Setup: Export and Manage Video Data in Google Sheets<\/h2>\t\t\t\t\t\t\t\t<div class=\"p-postList__meta\">\n\t\t\t\t\t<div class=\"p-postList__times c-postTimes u-thin\">\n\t<time class=\"c-postTimes__posted icon-posted\" datetime=\"2024-12-18\" aria-label=\"\u516c\u958b\u65e5\">2024\u5e7412\u670818\u65e5<\/time><\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t<\/a>\n<\/li>\n<li class=\"p-postList__item\">\n\t<a href=\"https:\/\/84office.jp\/en\/googlesheets-gas-youtube-data-api\/\" class=\"p-postList__link\">\n\t\t<div class=\"p-postList__thumb c-postThumb\">\n\t<figure class=\"c-postThumb__figure\">\n\t\t<img decoding=\"async\" width=\"1024\" height=\"538\"  src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/07\/46a990f4f79647e9ab8181ba7df4f5fa-1024x538.jpg\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/07\/46a990f4f79647e9ab8181ba7df4f5fa-1024x538.jpg 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/07\/46a990f4f79647e9ab8181ba7df4f5fa-300x158.jpg 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/07\/46a990f4f79647e9ab8181ba7df4f5fa-768x403.jpg 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/07\/46a990f4f79647e9ab8181ba7df4f5fa.jpg 1200w\" sizes=\"auto, (min-width: 960px) 400px, 100vw\" loading=\"lazy\" >\t<\/figure>\n\t\t\t<span class=\"c-postThumb__cat icon-folder\" data-cat-id=\"12\">Google Sheets<\/span>\n\t<\/div>\n\t\t\t\t\t<div class=\"p-postList__body\">\n\t\t\t\t<h2 class=\"p-postList__title\">Google Sheets YouTube API: Retrieve and List 500+ Videos with Apps Script<\/h2>\t\t\t\t\t\t\t\t<div class=\"p-postList__meta\">\n\t\t\t\t\t<div class=\"p-postList__times c-postTimes u-thin\">\n\t<time class=\"c-postTimes__posted icon-posted\" datetime=\"2025-07-18\" aria-label=\"\u516c\u958b\u65e5\">2025\u5e747\u670818\u65e5<\/time><\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t<\/a>\n<\/li>\n<li class=\"p-postList__item\">\n\t<a href=\"https:\/\/84office.jp\/en\/duplicate-data-extraction\/\" class=\"p-postList__link\">\n\t\t<div class=\"p-postList__thumb c-postThumb\">\n\t<figure class=\"c-postThumb__figure\">\n\t\t<img decoding=\"async\" width=\"1024\" height=\"538\"  src=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/f713dfc6aeb4da01bcd388842c732c69-1024x538.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" srcset=\"https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/f713dfc6aeb4da01bcd388842c732c69-1024x538.png 1024w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/f713dfc6aeb4da01bcd388842c732c69-300x158.png 300w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/f713dfc6aeb4da01bcd388842c732c69-768x403.png 768w, https:\/\/84office.jp\/wp-content\/uploads\/2025\/01\/f713dfc6aeb4da01bcd388842c732c69.png 1200w\" sizes=\"auto, (min-width: 960px) 400px, 100vw\" loading=\"lazy\" >\t<\/figure>\n\t\t\t<span class=\"c-postThumb__cat icon-folder\" data-cat-id=\"12\">Google Sheets<\/span>\n\t<\/div>\n\t\t\t\t\t<div class=\"p-postList__body\">\n\t\t\t\t<h2 class=\"p-postList__title\">How to Identify Duplicate Data in Google Sheets: Using Functions and Conditional Formatting<\/h2>\t\t\t\t\t\t\t\t<div class=\"p-postList__meta\">\n\t\t\t\t\t<div class=\"p-postList__times c-postTimes u-thin\">\n\t<time class=\"c-postTimes__posted icon-posted\" datetime=\"2025-01-03\" aria-label=\"\u516c\u958b\u65e5\">2025\u5e741\u67083\u65e5<\/time><\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t<\/a>\n<\/li>\n<\/ul><\/div>\n\n\n<p class=\"is-style-emboss_box has-swl-pale-02-background-color has-background wp-block-paragraph\">Our company offers support for improving work efficiency through the use of Google Apps Script. <br>If you need assistance with Google Apps Script customization or error resolution, please feel free to contact us. <br>We are fully committed to supporting your business improvements.<br><br><a href=\"https:\/\/84office.jp\/contact\/\">Contact us here<br><\/a><\/p>\n\n\n\n<script src=\"https:\/\/codoc.jp\/js\/cms.js\" data-css=\"rainbow\" data-usercode=\"pQLZofrBiA\" charset=\"UTF-8\" defer><\/script>\n <div id=\"codoc-entry-9lNr9PuMXQ\" class=\"codoc-entries\" data-without-body=\"1\" data-support-button-text=\"Support with a Tip\" data-support-message=\"We will keep offering tools and information to boost work efficiency. Your support helps us provide even better content.\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>In previous articles, we introduced how to modify access permissions and bulk copy files within a folder using [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":17160,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"swell_btn_cv_data":"","_locale":"en_US","_original_post":"https:\/\/84office.jp\/?p=15762","footnotes":""},"categories":[12],"tags":[],"class_list":["post-17146","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-12","en-US"],"_links":{"self":[{"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/posts\/17146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/comments?post=17146"}],"version-history":[{"count":3,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/posts\/17146\/revisions"}],"predecessor-version":[{"id":17161,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/posts\/17146\/revisions\/17161"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/media\/17160"}],"wp:attachment":[{"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/media?parent=17146"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/categories?post=17146"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/84office.jp\/wp-json\/wp\/v2\/tags?post=17146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}