E-tablo verilerindeki yinelenen satırları kaldırmak için kullanabileceğiniz bir Apps Komut Dosyası kitaplığı oluşturun.
Hedefler
- Komut dosyasını ayarlayın.
- Komut dosyasını çalıştırın.
Ön koşullar
Bu örneği kullanmak için aşağıdaki önkoşullara ihtiyacınız vardır:
- Google Hesabı (Google Workspace hesapları için yönetici onayı gerekebilir).
- İnternet erişimi olan bir web tarayıcısı.
Komut dosyasını ayarlayın
Kitaplığı oluşturmak için aşağıdaki adımları uygulayın:
- Google Hesabınızda oturum açın.
- Komut dosyası düzenleyiciyi açmak için script.google.com adresine gidin.
- Sol üstte Yeni proje'yi tıklayın.
Komut dosyası düzenleyicideki tüm kodları silin ve aşağıdaki kodu yapıştırın.
Kaydet'i tıklayın.
Sol üstte Adsız proje'yi tıklayın.
Komut dosyanıza Yinelenen satırları kaldırın adını verin ve Yeniden adlandır'ı tıklayın.
Dağıt > Yeni dağıtım'ı tıklayın.
Tür seç'in yanında, Dağıtım türlerini etkinleştir'i tıklayın > Kitaplık'ı tıklayın.
Kitaplık için Yinelenen satırları kaldır gibi bir açıklama girin. Kitaplığa erişimi olan herkes bu açıklamayı görebilir.
Dağıt'ı tıklayın.
Solda Proje ayarları'nı tıklayın.
Kimlikler bölümünde, sonraki bir adımda kullanmak üzere komut dosyası kimliğini kopyalayın.
Komut dosyasını çalıştırma
Bir kitaplığı kullanmak için Apps Komut Dosyası projesiyle ilgili en azından görüntüleme izinlerine sahip olmanız gerekir. Kitaplığı oluşturduğunuzdan beri kullanmak için gerekli izinlere sahipsiniz. Başkalarının kitaplığı kullanmasına izin vermek istiyorsanız bu kullanıcılara Apps Komut Dosyası projesi için görüntüleme izni verin.
Kitaplığı kullanmak için aşağıdaki adımları uygulayın:
- Yinelenen satırlara sahip veriler içeren bir Google E-Tablolar e-tablosunu açın. Örnek e-tablo kullanmak için Örnek yinelenen satırlar e-tablosunun bir kopyasını oluşturun.
- Uzantılar > Apps Komut Dosyası'nı tıklayın.
- Kitaplıklar'ın yanında, Kitaplık ekle'yi tıklayın.
- Komut dosyası kimliği bölümüne, önceki bölümde kopyaladığınız kitaplık Apps Komut Dosyası projesindeki komut dosyası kimliğini yapıştırın.
- Ara'yı tıklayın.
- Sürüm bölümünde 1'i seçin.
- Ekle'yi tıklayın.
Komut dosyası düzenleyicideki tüm kodları silin ve aşağıdaki kodu yapıştırın.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
İşlev açılır listesinde runLibrary'ı seçin.
Run'ı (Çalıştır) tıklayın.
Yinelenen satırlar olmadan güncellenmiş verileri görüntülemek için e-tabloya dönün.
Kodu inceleyin
Bu çözümün Apps Komut Dosyası kodunu incelemek için aşağıdaki Kaynak kodu görüntüle'yi tıklayın:
Kaynak kodunu görüntüleyin
İlk olarak, komut dosyası tüm verileri almak için e-tabloya tek bir çağrıda bulunur. Sayfayı satır satır okumayı seçebilirsiniz ancak JavaScript işlemleri, E-Tablo gibi diğer hizmetlerle iletişim kurmaktan çok daha hızlıdır. Ne kadar az telefon araması yaparsanız o kadar hızlı çalışır. Her bir komut dosyası yürütme işleminin maksimum çalışma süresi 6 dakika olduğundan bu önemlidir.
data
değişkeni, sayfadaki tüm değerleri içeren 2 boyutlu bir JavaScript dizisidir. newData
, komut dosyasının yinelenmeyen tüm satırları yerleştirdiği boş bir dizidir.
İlk for
döngüsü, data
2 boyutlu dizisindeki her satır üzerinde yinelenir. Her satır için ikinci döngü, newData
dizisinde eşleşen verilere sahip başka bir satırın zaten var olup olmadığını test eder. Satır kopya değilse newData
dizisine aktarılır.
Son olarak, komut dosyası sayfanın mevcut içeriğini siler ve newData
dizisinin içeriğini ekler.
Değişiklikler
Kitaplığı, ihtiyaçlarınıza göre istediğiniz kadar düzenleyebilirsiniz. Aşağıda isteğe bağlı bir değişiklik verilmiştir.
Bazı sütunlardaki eşleşen verilere sahip satırları kaldırın
Eşleşen satırları tamamen kaldırmak yerine, sütunlardan yalnızca bir veya ikisinde eşleşen verilere sahip olan satırları kaldırmak isteyebilirsiniz. Bunu yapmak için koşullu ifadeyi değiştirebilirsiniz.
Örnek kodda aşağıdaki satırı güncelleyin:
if(row.join() == newData[j].join()){ duplicate = true; }
Satırı aşağıdaki kodla değiştirin:
if(row[0] == newData[j][0] && row[1] == newData[j][1]){ duplicate = true; }
Yukarıdaki koşullu ifade, sayfanın birinci ve ikinci sütunundaki iki satırın aynı verilere sahip olduğu her durumda yinelemeleri bulur.
Katkıda bulunanlar
Bu örnek, Google Geliştirici Uzmanı Romain Vialard tarafından oluşturulmuştur. Romain'i @romain_vialard Twitter'da takip edin.
Bu örnek, Google Geliştirici Uzmanlarının yardımıyla Google tarafından yönetilir.