Google E-Tablolar’da otomatik hücre renklendirme nasıl yapılır?
Table of Contents
Google E-Tablolar’da büyük veri kümeleriyle çalışırken, aynı değeri taşıyan hücreleri kolayca tespit etmek, tabloyu daha okunabilir ve anlaşılır hale getirir. Bu durumu kolaylaştırmak için, App Script kullanarak geliştirdiğimiz bir JavaScript fonksiyonu ile belirli bir sütun aralığında yer alan aynı değerlere sahip hücreleri otomatik olarak renklendirmek mümkün.
Bu JavaScript fonksiyonu, D:J sütun aralığındaki hücrelerde yer alan verileri inceliyor ve aynı değeri taşıyan hücrelere aynı rengi atıyor. Bu sayede tablo üzerindeki verileri daha kolay ayrıştırabiliyoruz. Özellikle büyük veri kümeleri üzerinde çalışırken aynı değere sahip hücreleri belirlemek çok daha hızlı ve pratik hale geliyor.
Otomatik hücre renklendirme
Aşağıdaki JavaScript fonksiyonu ile ilk satırı atlayarak D:J sütun aralığındaki verileri, belirlediğimiz renk paletleriyle otomatik renklendirme işlemi uyguluyoruz. Fonksiyon, D:J aralığındaki hücrelerde, aynı değeri taşıyan hücrelere aynı renk değerini atıyor. Böylece tablo üzerinde çalışırken hücreleri birbirinden daha kolay bir şekilde ayrıştırabiliyoruz.
İlk olarak, aktif e-tablolar dosyasını ve üzerinde çalışılacak sayfayı alıyoruz. Daha sonra, D2:J aralığındaki verileri elde ederek işlemlere başlıyoruz. Renk paleti olarak 18 farklı renk kullanıyoruz. Bu renk paletinde, pastel tonlarında renkler seçilmiştir. Renk paletinin genişliği, büyük veri kümelerinde aynı renkteki hücrelerin birbirine yakın olmamasını sağlayarak daha anlaşılır bir görünüm sunar.
function colorizeCells() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getRange("D1:J");
var values = range.getValues();
var colors = {};
var colorIndex = 0;
var colorPalette = [
'#FFCDD2', '#F8BBD0', '#E1BEE7', '#D1C4E9', '#C5CAE9', '#BBDEFB', '#B3E5FC', '#B2EBF2',
'#B2DFDB', '#C8E6C9', '#DCEDC8', '#F0F4C3', '#FFECB3', '#FFE0B2', '#FFCCBC', '#D7CCC8',
'#F5F5F5', '#CFD8DC'
];
// i=0 yerine i=1'den başlatıyoruz
for (var i = 1; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
var cellValue = values[i][j];
if (cellValue && !colors[cellValue]) {
colors[cellValue] = colorPalette[colorIndex % colorPalette.length];
colorIndex++;
}
}
}
// i=0 yerine i=1'den başlatıyoruz
for (var i = 1; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
var cellValue = values[i][j];
if (cellValue) {
range.getCell(i + 1, j + 1).setBackground(colors[cellValue]);
}
}
}
}
Fonksiyonun Çalışma Mantığı
- Veri Elde Edilmesi: İlk adımda, D2:J aralığındaki verileri
getValues()metodu ile alıyoruz. Bu yöntemle tüm hücre değerlerini bir dizi halinde elde edebiliyoruz. - Renk Atama: İkinci adımda, hücrelerde yer alan değerleri kontrol ederek aynı değere sahip hücrelere aynı rengi atıyoruz. Burada
colorPalettedizisi içerisindeki renkleri kullanıyoruz. Eğer bir hücre değeri henüz bir renge sahip değilse, yeni bir renk atanıyor vecolorsnesnesinde saklanıyor. - Renk Uygulama: Son adımda, her hücreye atanmış olan rengi
setBackground()metodu ile hücrenin arka plan rengi olarak uyguluyoruz.
Sonuç
Bu fonksiyon sayesinde, Google E-Tablolar üzerinde aynı değere sahip hücreleri renklendirerek verileri daha hızlı ve etkili bir şekilde analiz edebilirsiniz. Özellikle büyük veri setleri üzerinde çalışırken, aynı değere sahip hücreleri belirlemek ve ayırt etmek artık çok daha kolay ve görsel olarak anlaşılır hale geliyor. Bu fonksiyon, iş akışınızı optimize ederek zaman kazandıracaktır.