Cara Menggabungkan Beberapa Sheet dan FIle Google Spreadsheet

Gabungkan data dari banyak sheet ke satu sheet utama di Google Spreadsheet. Ikuti cara cepat & otomatis ini pakai rumus QUERY. Tutorial lengkap mudah

Memilki data yang terpisah pisah baik terpisah pada sheet maupun kita bisa menggunakan function atau appscript untuk menggabungkannya 

Cara Menggabungkan Sheet dan FIle Google Spreadsheet


1. Menggabungkan Sheet Menggunakan Function Filter

Pada contoh kasus saya memliki dua sheet dengan kolom header yang sama kemudian saya akan menggabungkannya menjadi satu dalam satu sheet caranya anda bisa membuat sheet baru kemudian masukan rumus 

={Sheet1!A1;  FILTER(Sheet1!A2:A, Sheet1!A2:A <> "");

  FILTER(Sheet2!A2:A, Sheet2!A2:A <> "")}

pada rumus tersebut kita mengambil header kolom pada kolom A1 kemudian memanggil kolom isinya dari masing masing sheet.

2. Menggabungkan Sheet dengan Fungsi QUERY

Fungsi QUERY, salah satu fungsi di Google Spreadsheet yang menurut sangat bagus dan mudah digunakan. Jika Anda belum pernah menggunakannya silahkan simak dan ikuti dengan baik cara yang saya lakukan

Pada Studi Kasus kita akan menggabungkan data dari "Sheet1" dan "Sheet2" ke dalam sebuah sheet baru bernama "Sheet Gabungan" dan berikut adalah langkah-langkah tersebut

  1. Siapkan Sheet Baru, pada contoh kita membuat 3 Sheet
    Sheet1, Sheet2 dan Sheet Gabungan



  2. Tulis Rumus QUERY di sel A1 pada "Sheet Gabungan" =QUERY({Sheet1!A1:B7;Sheet2!A2:B7},"SELECT *")


Penjelasan Rumus Fungsi Menggabungkan tabel pada Sheet 

  1. { } untuk membuat sebuah array atau gabungan data virtual. 
  2. 'Sheet1'!A1:C mengambil semua data dari Cell A1 hingga kolom C pada Sheet1. 
  3.  ; berfungsi sebagai "penampil" data secara vertikal. 
  4. 'Sheet2'!A2:C mengambil data dari sel A2 hingga kolom C di Sheet2. Perhatikan, kita mulai dari baris 2 untuk menghindari duplikasi header
  5.  "SELECT * : Ini adalah perintah untuk fungsi QUERY. Untuk menampilkan semua. 

Kelabihan Menggunakan Fungsi QUERY 

  1. Dinamis karena saat ada data baru yang ditambahkan atau diubah pada sheet sumber (Sheet1 atau Sheet2), data di "Sheet Gabungan" akan otomatis diperbarui. 
  2. Lebih efisien karena tidak perlu lagi melakukan copy-paste manual setiap kali ada pembaruan data. 
  3. Aman dari kesalahan karena tidak manual copy-paste 
  4. Rapi dan Terpusat karena semua data berada dalam satu sheet dan siap untuk dianalisis lebih lanjut menggunakan Pivot Table, VLOOKUP, atau fungsi Google Sheet lainnya. 

3. Menggabungkan sheet dengan Appscript

Pada contoh kasus yang sama namun kita menggunakan AppScript dimana kita memasukan code untuk membuat fungsi untuk melakukan penggabungan sheet dengan code sebagai berikut 

function gabSheet() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const targetSheetName = "Gabungan";
const targetSheet = ss.getSheetByName(targetSheetName) || ss.insertSheet(targetSheetName);
targetSheet.clearContents();

// Ambil header dari kolom Sheet1
const header = ss.getSheetByName("Sheet1").getRange("A1:C1").getValues()[0];
targetSheet.getRange(1, 1, 1, header.length).setValues([header]);

let row = 2;
const sheetNames = ["Sheet1", "Sheet2"]; // <== sesuaikan dengan nama sheet

for (const name of sheetNames) {
const sheet = ss.getSheetByName(name);
if (!sheet) continue; // skip jika sheet tidak ditemukan

const lastRow = sheet.getLastRow();
if (lastRow < 2) continue;

const data = sheet.getRange("A2:C" + lastRow).getValues();
const nonEmptyRows = data.filter(row => row.join("") !== "");

if (nonEmptyRows.length > 0) {
targetSheet.getRange(row, 1, nonEmptyRows.length, nonEmptyRows[0].length).setValues(nonEmptyRows);
row += nonEmptyRows.length;
}
}
}

3. Menggabungkan File menjadi satu File Spreadsheet

Untuk melakukan nya pada contoh kasus kita memliki satu folder yang berisi dua file spreadsheet dengan nama file 1 dan file 2. Kita akan melakukan penggabungan 2 file tersebut menjadi satu dengan menggunakan AppScript dengan cara memasukan code berikut ini dan menjalankan function hingga selesai

START

function gabungkanFile() {
const folderId = "IDFOLDERDRIVE"; // Ganti dengan ID folder Anda
const folder = DriveApp.getFolderById(folderId);
const files = folder.getFilesByType(MimeType.GOOGLE_SHEETS);

const targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Gabungan")
|| SpreadsheetApp.getActiveSpreadsheet().insertSheet("Gabungan");
targetSheet.clearContents();

let row = 2;
let headerSet = false;

while (files.hasNext()) {
const file = files.next();
const ss = SpreadsheetApp.open(file);
const sheet = ss.getSheets()[0]; // Ambil sheet pertama

const lastRow = sheet.getLastRow();
const lastCol = sheet.getLastColumn();

if (lastRow < 1 || lastCol < 1) continue; // lewati sheet kosong

if (!headerSet) {
const header = sheet.getRange(1, 1, 1, lastCol).getValues();
targetSheet.getRange(1, 1, 1, lastCol).setValues(header);
headerSet = true;
}

if (lastRow > 1) {
const data = sheet.getRange(2, 1, lastRow - 1, lastCol).getValues();
targetSheet.getRange(row, 1, data.length, lastCol).setValues(data);
row += data.length;
}
}
}


Setelah selesai maka anda akan mendapatkan data dalam satu file spreadsheet dari 2 file spreadsheet tersebut. anda bisa melihat video berikut ini untuk mengikuti langkah-langkahnya.



Mungkin anda juga mencari :

OlderNewest

Post a Comment

Silahkan berkomentar dengan baik dan benar