Google Sheets’teki Yeni Satırdan Otomatik Görev Oluşturma

google sheets’ten otomatik görev akışı

Merhaba — eğer bir Google Sheets tablosuna yeni satır eklendiğinde otomatik görev oluşturmak istiyorsanız, doğru yerdesiniz. Google Sheets’teki Yeni Satırdan Otomatik Görev Oluşturma işlemi, tekrar eden elle giriş işi azaltır, görev yönetimini hızlandırır ve hata riskini düşürür. Aşağıda hem no-code araçlarla hem de basit bir Apps Script ile nasıl güvenilir bir otomasyon kuracağınızı, hangi durumlarda hangi yöntemi tercih etmeniz gerektiğini ve karşılaşabileceğiniz dikkat edilmesi gereken noktaları bulacaksınız.

Karşılaşılan pratik problem

Çoğu küçük ekip veya birey şu sorunu yaşıyor: bir talep, form ya da içerik isteği Google Sheets’e düştüğünde, bu satırdan otomatik olarak görev oluşturmak istiyorum — ama görevin başlığı, açıklaması, sorumlusu ve teslim tarihi satırdaki belirli sütunlara göre farklılaşıyor. Ayrıca bazı satırlar görev oluşturulmasın (örneğin “durum” sütunu “iptal” ise). Bu tek soru etrafında örnek çözüm üreteceğiz.

Ana problem: Yeni eklenen satırın içeriğine göre koşullu, doğru formatta ve atanmış bir görev nasıl otomatik oluşturulur?

Çözüm yaklaşımı — genel bakış

İki pratik yol var:

  • No-code/low-code araçlar kullanmak (Zapier, Make, Power Automate) — hızlı kurulum, az teknik bilgi.
  • Google Apps Script ile doğrudan Sheets’ten tetiklenen script yazmak — daha esnek, maliyetsiz (özellikle küçük hacimde) ve özelleştirilebilir.

Her iki yaklaşımda ortak adımlar:

  1. Satır eklendiğinde tetikleme.
  2. Satır verilerini temizleme/formatlama (tarih, e-posta, metin).
  3. Koşullara göre görev oluşturma (ör. durum ≠ “iptal”).
  4. Görev oluşturma sırasında gerekli alanları eşleme (başlık, açıklama, atanan, tarih).
  5. Oluşan görevin ID’sini veya bağlantısını Sheets’e yazma (loglama).

Aşağıda her iki yaklaşım için ayrıntılı adımlar, örnek senaryo, kontrol listesi ve karar ölçütleri var.

Örnek senaryo: İçerik isteme formu → Asana görevi

Senaryo kısaca:

  • Ekip bir Google Form üzerinden içerik talepleri topluyor; cevaplar Google Sheets’e gidiyor.
  • Her yeni satır için Asana’da bir görev oluşturulacak.
  • Sorumlu, “Kategori” sütununa göre otomatik atanacak (örn. “Pazarlama” → pazarlama@şirket.com).
  • Teslim tarihi, “İstenen Teslim Tarihi” sütunundan alınacak; boşsa otomatik 7 gün sonrasına ayarlanacak.
  • Eğer “Acil” sütunu işaretliyse öncelik etiketi eklenmeli.
  • Eğer “Durum” sütunu “İptal” ise görev oluşturulmayacak.

Bu senaryo üzerinden adımları ele alalım.

No-code yöntem: Zapier / Make ile hızlı kurulum

Adımlar (Zapier örneği)

  1. Zap oluşturun: Trigger seçin → Google Sheets → New Spreadsheet Row.
  2. Google hesabınızı bağlayın ve doğru spreadsheet ile worksheet seçin.
  3. Zap içinde bir filtre (Filter by Zapier) ekleyin:
    • Koşul: Durum (Status) != İptal
  4. Veri dönüştürme (isteğe bağlı):
    • Teslim tarihi boşsa → Formatter by Zapier kullanarak tarih ekle (today + 7 days).
    • E-posta veya isim eşlemesi gerekiyorsa Lookup Table kullanın.
  5. Action: Asana → Create Task.
    • Task name: {{Başlık sütunu}} veya “İçerik Talebi: {{Başlık}}”
    • Notes: Satırdaki açıklama alanını ekleyin + link to sheet row.
    • Assignee: eşleşen e-posta (Lookup ile).
    • Due date: dönüştürülmüş tarih.
    • Tags: “Acil” ise “High Priority”.
  6. Son adım: Asana’dan dönen task ID veya bağlantısını tekrar Sheets’e yazdırmak için Google Sheets → Update Spreadsheet Row kullanın.

No-code için dikkat ve kısıtlar

  • Risk: Ücretsiz planlarda tetikleme sıklığı ve işlem limiti düşük olabilir; yüksek hacimde gecikme yaşanır.
  • Karar noktası: Hızlı kurulum ve kolay bakım istiyorsanız no-code tercih edin; teknik özelleştirme gerekiyorsa diğer yola bakın.
  • Öneri: Test verileriyle kapsamlı test yapın; özellikle tarih dönüşümleri ve atama tabloları yanlışlık yapmaya müsait alanlardır.

Apps Script yöntemi: Daha esnek, doğrudan kontrol

Apps Script ile doğrudan Sheets üzerinde onEdit veya zamanlanmış tetikleyici (trigger) kullanabilirsiniz. OnEdit yalnızca kullanıcının manuel düzenlemesine tepki verir; form yanıtlarını yakalamak için installable trigger (Form submit) ya da zamanlı tetikleyici (every minute) tercih edin.

Bu konuyla ilgili tamamlayici bilgi icin Google Forms Verilerini Google Sheets’e Otomatik Aktarma Rehberi rehberini de inceleyebilirsiniz.

Adımlar

  1. Google Sheets → Extensions → Apps Script açın.
  2. Yeni bir script dosyası oluşturun. Form submit tetikleyici kullanalım:
    • function onFormSubmit(e) { … }
  3. Gelen e.values içinden sütunları alın, temizleyin.
  4. Koşul kontrolü: e.values[‘Durum’] !== ‘İptal’
  5. Görevi oluşturmak için Asana API veya başka bir servis API’si çağırın (UrlFetchApp ile POST).
  6. Başarılıysa dönen task ID’yi veya linki ilgili satıra yazın.
  7. Hata yönetimi: başarısız istekleri ayrı bir log sayfasına kaydedin ve gerektiğinde e-posta bildirimleri atın.

Basit Apps Script örneği (Asana API için şablon)

function onFormSubmit(e) {
  // e.values: form satırı değerleri (dizide sırayla)
  const headers = ['Zaman','Başlık','Açıklama','Kategori','Teslim','Acil','Durum','Email'];
  const row = mapRow(headers, e.values);

  if (row.Durum && row.Durum.toLowerCase() === 'iptal') return;

  const due = row.Teslim || getDatePlusDays(7);
  const assignee = mapCategoryToEmail(row.Kategori) || row.Email;

  const payload = {
    data: {
      name: `İçerik: ${row.Başlık}`,
      notes: row.Açıklama,
      assignee: assignee,
      due_on: formatDateForAsana(due),
      projects: ['ASANA_PROJECT_ID'],
      tags: row.Acil && row.Acil.toLowerCase() === 'evet' ? ['ACIL_TAG_ID'] : []
    }
  };

  const options = {
    method: 'post',
    contentType: 'application/json',
    headers: { 'Authorization': 'Bearer ' + ASANA_TOKEN },
    payload: JSON.stringify(payload)
  };

  try {
    const response = UrlFetchApp.fetch('https://app.asana.com/api/1.0/tasks', options);
    const result = JSON.parse(response.getContentText());
    const taskId = result.data.id;
    writeTaskIdToSheet(e.range.getRow(), taskId);
  } catch (err) {
    logError(e.values, err);
  }
}

// Yardımcı fonksiyonlar (mapRow, getDatePlusDays, formatDateForAsana, writeTaskIdToSheet, logError, mapCategoryToEmail) ayrı tanımlanmalı.

(Not: Bu örnek şablondur; gerçek kullanımda sabitleri ve yardımcı fonksiyonları tamamlamalısınız.)

Apps Script için dikkat ve kısıtlar

  • Risk: API anahtarlarını (token) script içinde saklarken gizli tutulmalı; proje ayarlarında uygun izinler verilmeli.
  • Karar noktası: Özelleştirme ve maliyet kontrolü önceliğinizse Apps Script avantajlıdır.
  • Öneri: Zamanlanmış trigger yerine Form Submit tetikleyicisini tercih edin; böylece sadece gerçek girişlerde çalışır.

Kontrol listesi — otomasyon kurarken kontrol edin

  • [ ] Hangi tetikleyicinin kullanılacağı belirlendi (Form submit / New row / zamanlı).
  • [ ] Hangi sütunların zorunlu olduğu ve boşsa ne yapılacağı tanımlandı.
  • [ ] İptal/çöp verileri için filtreleme eklendi.
  • [ ] Atama mantığı ve lookup tabloları hazır.
  • [ ] Tarih formatları test edildi; saat dilimi hatası kontrol edildi.
  • [ ] Hata ve retry mekanizması planlandı (loglama, e-posta).
  • [ ] Oluşturulan görev bilgisi (ID/link) Sheets’e yazılıyor.
  • [ ] API token/kimlik bilgilerinin güvenliği sağlandı.
  • [ ] Limitler ve quota kontrolü yapıldı (Apps Script günlük limitleri, Zapier işlem limiti).

Karar ölçütleri — hangi yöntemi seçmelisiniz?

  • Eğer birkaç günlük deneme, az sayıda işlem ve hızlı sonuç istiyorsanız: No-code (Zapier/Make).
  • Eğer haftalık yüzlerce satır işlenecekse ve maliyet önemliyse: Apps Script (daha ucuz, ama bakım gerekebilir).
  • Eğer çok karmaşık iş kuralları ve dış hizmetlerle derin entegrasyonlar varsa: Apps Script veya kendi küçük sunucunuzda çalışan bir çözüm.
  • Eğer ekip teknik olmayan kişilerden oluşuyorsa: No-code daha kolay yönetilir.

Önemli karar noktası: İşlem hacmi ve esneklik ihtiyacı maliyeti belirler. Küçük hacim için no-code maliyet/karmaşıklık dengesini iyi kurar; büyüdüğünde kodlu çözüm daha ekonomik olabilir.

Uygulanabilir pratik öneriler

  • Her zaman test sheet’i kullanın; gerçek verilerle doğrudan başlamak hata riskini artırır.
  • Tarihleri ISO formatında (YYYY-MM-DD) saklayın; API çağrılarında hata olasılığı azalır.
  • Atama için e-posta kullanıyorsanız önceden doğrulama yapın (lookup tablosu veya düzenleyici).
  • Görev açıklamasına mutlaka orijinal satıra götüren bir link ekleyin; operasyon kolaylaşır.
  • Hata loglarını haftalık gözden geçirin; sık tekrarlayan hatalar varsa otomasyonu düzeltin.
  • Büyük hacim geliyorsa batch işlemi düşünün (örneğin her 5 dakikada bir toplu gönderim) — rate limit sorunlarını azaltır.
  • Testten sonra bir hafta boyunca “izleme modu” çalıştırın: görevler oluşturulurken paralel olarak ek bir sütuna “test” etiketi yazdırın.
  • Yetki yönetimini düzenleyin: API token’larını tek kişiye değil güvendiğiniz bir hesap üzerinden yönetin.
google sheets’ten otomatik görev akışı

Sonuç ve öneri

Google Sheets’teki Yeni Satırdan Otomatik Görev Oluşturma, doğru kurulduğunda zaman ve hata payı açısından ciddi avantaj sağlar. Küçük ekipler ve hızlı uygulama ihtiyacı varsa no-code araçlarla başlayın; özelleştirme, maliyet kontrolü ve yüksek hacim için Apps Script’e geçişi planlayın. Her iki durumda da test, veri temizleme ve hata loglama unutulmamalı.

Özet adımlar:

  1. Tetikleyiciyi seçin (Form Submit veya New Row).
  2. Koşulları ve veri eşlemelerini netleştirin.
  3. Küçük bir test dizisiyle kurulum yapın.
  4. Oluşan görevleri Sheets’e kaydedin ve loglayın.
  5. Haftalık izleme ile hataları düzeltin.

Eğer isterseniz örnek uygulamanız (spreadsheet yapısı ve hedef görev yönetim aracı) üzerinden adım adım bir kurulum planı ve hazır Apps Script şablonu hazırlayıp gönderebilirim. Hangi araçları kullanıyorsunuz (Asana, Trello, Todoist, ClickUp, vb.) ve örnek sütun başlıklarınızı paylaşırsanız, daha spesifik bir taslak yaparım.

Bu konuyla ilgili tamamlayici bilgi icin Yeni WordPress Yazısı Yayınlanınca X ve LinkedIn’de Otomatik Paylaşım Nasıl Yapılır? rehberini de inceleyebilirsiniz.

Bu konuyla ilgili tamamlayici bilgi icin Her Sabah Otomatik Satış Raporu Oluşturma ve E-postaya Gönderme rehberini de inceleyebilirsiniz.

Bu konuyla ilgili tamamlayici bilgi icin Google Drive’a Yüklenen Dosyaları Otomatik Sınıflandırma rehberini de inceleyebilirsiniz.

Bu konuyla ilgili tamamlayici bilgi icin WhatsApp’tan Gelen Mesajları Google Sheets’e Otomatik Kaydetme rehberini de inceleyebilirsiniz.

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top