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

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

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

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

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

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

我們需要程式自動化!

當你準備好程式碼之後
(生出程式碼的方式,我們在 Chapter 3-8 用嘴巴寫程式碼 說明),
想要測試你的程式碼,
只要這四個步驟:

  1. 貼上
  2. 儲存
  3. 執行
  4. 看執行結果

以下我們把每個步驟的細節都仔細拆解,
請你跟我這樣做:
步驟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-5 啊我就不會寫程式啊

4 Comments

  1. […] 現在來進行測試吧!打開 Google Sheets,輸入一些測試客戶資料,像名字、產品、折扣等,然後運行程式。關於具體執行程式的步驟:貼上、儲存、執行,可參考 Chapter 3-4 前導案例:自動分拆 sheets 的步驟教學。執行後,你應該可以在寄件中看到你寄出的信件,每封都精準無誤,客製化的內容都準確地出現在信件中。這樣不僅節省了大量時間,還提高了精確度。 […]

Comments are closed.