iT邦幫忙

2024 iThome 鐵人賽

DAY 10
1
生成式 AI

零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典系列 第 10

《零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典》Chapter 3-4 前導案例:自動分拆 sheets

  • 分享至 

  • xImage
  •  

在這個單元,我會用一個簡單的案例,讓你體驗一下自動化的威力。

假設我是一位財務人員,
我有一張 excel sheet 母表,裡面包含了各個國家的資料。
如圖:

而我需要把母表資料根據國家分裝到不同的子表。
如下圖:

如果我的資料只有五、六個國家,
手動做也不會太久。

但如果有幾十個國家的時候呢?

我們需要程式自動化!

請你跟我這樣做:
步驟1. 把我這個範例複製一份到你自己的 Google Drive,
你才有完整的編輯權限。

步驟2. 打開 Apps Script 介面

步驟3. 複製以下程式碼,完整貼到 Apps Script 的程式碼編輯區。
(請把原有的程式碼完全覆蓋取代掉)
(謹慎起見,可參考 《零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典》Chapter 3-1 沒看這篇之前,千萬不要執行程式 的要點,檢查一下程式碼。)

function copyDataToCountrySheets() {
    // Open the active spreadsheet and select the "Raw Data" sheet
    var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
    var rawDataSheet = spreadsheet.getSheetByName("Raw Data");

    // Get all the data from the "Raw Data" sheet
    var data = rawDataSheet.getDataRange().getValues();

    // Loop through each row (starting from row 2 to skip the headers)
    for (var i = 1; i < data.length; i++) {
      var country = data[i][0]; // Assuming country is in the first column (A)
      var amount = data[i][1];  // Assuming amount is in the second column (B)
      var date = data[i][2];    // Assuming date is in the third column (C)

      // Get or create the sheet for this country
      var countrySheet = spreadsheet.getSheetByName(country);
      if (!countrySheet) {
        countrySheet = spreadsheet.insertSheet(country);
        // Add headers to the new sheet
        countrySheet.appendRow(["Country", "Amount", "Date"]);
      }

      // Append the row to the country's sheet
      countrySheet.appendRow([country, amount, date]);
    }
  }

步驟4. 儲存,執行。

程式開始執行後,請趕快回到 Google Sheets 的介面。
不然你就會錯過自動化的表演😆

不過第一次執行,
會需要經過一連串的步驟,
這也是系統在提醒你這個程式碼的權限有哪些:



步驟5. 回到 Google Sheets 畫面一邊喝著咖啡,
一邊看著不同國家的分頁一一長出來,
一切全自動完成。

在基本功能之外,
我們還能繼續實現「自動把不同國家的資料寄出給不同的收件人」,
不過在看進一步範例之前,
我們先來聊聊,
要怎麼好好地產生程式碼。

如果你一路有跟著教學走到這一個單元,
關於「執行」程式碼這件事我們已經會了。

可是我們還是不會寫程式啊,
自動化流程最關鍵的程式碼要從哪裡來呢?

我們下一單元就來聊聊這個技巧。


上一篇
《零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典》Chapter 3-3 function 是一個什麼概念?
下一篇
《零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典》Chapter 3-5 啊我就不會寫程式啊
系列文
零基礎快速入門:GenAI 搭配 Google Apps Script 的工作自動化寶典30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言