{"id":30985,"date":"2025-10-04T09:31:45","date_gmt":"2025-10-04T06:31:45","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/"},"modified":"2025-10-04T09:31:45","modified_gmt":"2025-10-04T06:31:45","slug":"google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/","title":{"rendered":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber"},"content":{"rendered":"<p><body><\/p>\n<p>Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google&#8217;\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p>G\u00fcn\u00fcm\u00fczde dijital d\u00f6n\u00fc\u015f\u00fcm\u00fcn h\u0131z\u0131, i\u015fletmelerin operasyonel s\u00fcre\u00e7lerini s\u00fcrekli g\u00f6zden ge\u00e7irmesini ve optimize etmesini zorunlu k\u0131l\u0131yor. M\u00fc\u015fteriye \u00f6zel bir teklif olu\u015fturmak, genellikle bir\u00e7ok manuel ad\u0131m\u0131 i\u00e7eren karma\u015f\u0131k bir s\u00fcre\u00e7tir: m\u00fc\u015fteri bilgilerini toplama, hizmet veya \u00fcr\u00fcn se\u00e7eneklerini belirleme, fiyatland\u0131rma hesaplamalar\u0131 yapma, teklif metnini ki\u015fiselle\u015ftirme ve son olarak belgeyi d\u00fczenleyip g\u00f6nderme. Bu ad\u0131mlar\u0131n her biri, zaman al\u0131c\u0131 olmas\u0131n\u0131n yan\u0131 s\u0131ra insan kaynakl\u0131 hatalara da a\u00e7\u0131k bir yap\u0131ya sahiptir. \u00d6zellikle k\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli i\u015fletmeler i\u00e7in s\u0131n\u0131rl\u0131 kaynaklarla bu yo\u011funlu\u011fu y\u00f6netmek, b\u00fcy\u00fcme potansiyellerini k\u0131s\u0131tlayabilir. Bu rehber boyunca, Google&#8217;\u0131n bulut tabanl\u0131 ara\u00e7lar\u0131n\u0131n entegre g\u00fcc\u00fcn\u00fc kullanarak bu zorluklar\u0131n \u00fcstesinden nas\u0131l gelebilece\u011finizi, ba\u015ftan sona i\u015flevsel bir sistem kurarak g\u00f6sterece\u011fiz. Amac\u0131m\u0131z, sadece teknik bilgiyi aktarmak de\u011fil, ayn\u0131 zamanda bu otomasyonun i\u015f s\u00fcre\u00e7lerinize kataca\u011f\u0131 de\u011feri ve somut faydalar\u0131n\u0131 da g\u00f6zler \u00f6n\u00fcne sermektir. Bu sayede, daha az manuel \u00e7aba ile daha fazla i\u015f yapabilir, m\u00fc\u015fteri ili\u015fkilerinizi g\u00fc\u00e7lendirebilir ve en \u00f6nemlisi, ekibinizin de\u011ferli zaman\u0131n\u0131 daha stratejik g\u00f6revlere ay\u0131rmas\u0131na olanak tan\u0131yabilirsiniz.<\/p>\n<h2>Teklif Otomasyonu Neden Gerekli? Temel Faydalar\u0131 Nelerdir?<\/h2>\n<p>Teklif otomasyonu, modern i\u015f d\u00fcnyas\u0131nda sadece bir kolayl\u0131k de\u011fil, ayn\u0131 zamanda rekabet avantaj\u0131 sa\u011flayan stratejik bir gerekliliktir. Manuel s\u00fcre\u00e7lerin getirdi\u011fi y\u00fckten kurtularak, i\u015fletmeler daha h\u0131zl\u0131, daha do\u011fru ve daha profesyonel teklifler sunabilirler. Peki, bu otomasyonun temel faydalar\u0131 nelerdir ve s\u00fcre\u00e7lerinizde nas\u0131l bir d\u00f6n\u00fc\u015f\u00fcm yaratabilir?<\/p>\n<ul>\n<li>\n      <strong>Zaman Tasarrufu:<\/strong> En belirgin faydalardan biri, teklif haz\u0131rlamak i\u00e7in harcanan zaman\u0131n dramatik bir \u015fekilde azalmas\u0131d\u0131r. Elle veri giri\u015fi, metin d\u00fczenleme ve dosya olu\u015fturma gibi tekrarlayan g\u00f6revler otomatikle\u015fti\u011finde, ekibiniz daha de\u011ferli, stratejik i\u015flere odaklanabilir. Bu sayede, bir teklifi saatler yerine dakikalar i\u00e7inde haz\u0131rlamak m\u00fcmk\u00fcn hale gelir.\n    <\/li>\n<li>\n      <strong>Hata Azaltma:<\/strong> Manuel i\u015flemlerde yaz\u0131m hatalar\u0131, yanl\u0131\u015f fiyatland\u0131rma veya eksik bilgiler gibi hatalar ka\u00e7\u0131n\u0131lmazd\u0131r. Otomatik sistemler, veriyi tek bir kaynaktan \u00e7ekip tutarl\u0131 bir \u015fekilde i\u015fleyerek bu t\u00fcr hatalar\u0131n \u00f6n\u00fcne ge\u00e7er. Bu, hem i\u015fletmenizin g\u00fcvenilirli\u011fini art\u0131r\u0131r hem de potansiyel m\u00fc\u015fteri kayb\u0131n\u0131 engeller.\n    <\/li>\n<li>\n      <strong>Profesyonel ve Tutarl\u0131 Marka \u0130maj\u0131:<\/strong> Otomatik teklif sistemleri, her zaman markan\u0131z\u0131n standartlar\u0131na uygun, tutarl\u0131 ve profesyonel g\u00f6r\u00fcn\u00fcml\u00fc belgeler olu\u015fturur. \u015eablon tabanl\u0131 bir yakla\u015f\u0131m, t\u00fcm tekliflerin ayn\u0131 kurumsal kimli\u011fi yans\u0131tmas\u0131n\u0131 sa\u011flar, bu da m\u00fc\u015fterilerinizin g\u00f6z\u00fcnde itibar\u0131n\u0131z\u0131 y\u00fckseltir.\n    <\/li>\n<li>\n      <strong>\u00d6l\u00e7eklenebilirlik:<\/strong> \u0130\u015finiz b\u00fcy\u00fcd\u00fck\u00e7e teklif talepleri de artar. Otomatik bir sistem, artan talebi mevcut insan g\u00fcc\u00fcyle kolayca kar\u015f\u0131layabilir. Daha fazla m\u00fc\u015fteriye, daha h\u0131zl\u0131 bir \u015fekilde hizmet verme kapasitenizi art\u0131r\u0131r, b\u00f6ylece b\u00fcy\u00fcmenin \u00f6n\u00fcndeki engelleri kald\u0131r\u0131r.\n    <\/li>\n<li>\n      <strong>Veri Analizi ve \u00d6ng\u00f6r\u00fcler:<\/strong> T\u00fcm teklif verilerinin Google Sheets&#8217;te merkezi bir \u015fekilde toplanmas\u0131, sat\u0131\u015f trendlerini, m\u00fc\u015fteri tercihlerini ve teklif ba\u015far\u0131 oranlar\u0131n\u0131 analiz etme f\u0131rsat\u0131 sunar. Bu veriler, gelecekteki stratejilerinizi belirlemek ve i\u015f kararlar\u0131n\u0131z\u0131 desteklemek i\u00e7in paha bi\u00e7ilmez \u00f6ng\u00f6r\u00fcler sa\u011flar. Hangi hizmetlerin daha \u00e7ok talep g\u00f6rd\u00fc\u011f\u00fcn\u00fc, hangi fiyatland\u0131rma stratejilerinin daha ba\u015far\u0131l\u0131 oldu\u011funu g\u00f6rmek, i\u015finizi daha ak\u0131ll\u0131ca y\u00f6netmenize yard\u0131mc\u0131 olur.\n    <\/li>\n<\/ul>\n<p>Bu otomasyonun temel yap\u0131 ta\u015flar\u0131 olan Google Forms, Google Sheets ve Google Apps Script&#8217;i k\u0131saca tan\u0131yal\u0131m:<\/p>\n<ul>\n<li>\n      <strong>Google Forms:<\/strong> Kullan\u0131c\u0131 dostu aray\u00fcz\u00fc sayesinde h\u0131zla anketler, formlar ve bilgi toplama ara\u00e7lar\u0131 olu\u015fturman\u0131z\u0131 sa\u011flar. M\u00fc\u015fteriden teklif i\u00e7in gerekli t\u00fcm bilgileri yap\u0131land\u0131r\u0131lm\u0131\u015f bir \u015fekilde toplaman\u0131n en kolay yoludur.\n    <\/li>\n<li>\n      <strong>Google Sheets:<\/strong> G\u00fc\u00e7l\u00fc bir e-tablo program\u0131d\u0131r ve Forms yan\u0131tlar\u0131n\u0131 otomatik olarak depolamak i\u00e7in idealdir. Ayn\u0131 zamanda teklif \u015fablonunuzdaki dinamik verileri tutmak, fiyatland\u0131rma hesaplamalar\u0131 yapmak ve hatta basit bir CRM olarak g\u00f6rev g\u00f6rmek i\u00e7in kullan\u0131labilir. Esnekli\u011fi sayesinde, i\u015finize \u00f6zel veri setlerini kolayca y\u00f6netebilirsiniz.\n    <\/li>\n<li>\n      <strong>Google Apps Script:<\/strong> Google Workspace uygulamalar\u0131n\u0131 birbirine ba\u011flamak ve otomatikle\u015ftirmek i\u00e7in kullan\u0131lan JavaScript tabanl\u0131 bir geli\u015ftirme platformudur. Forms&#8217;tan gelen veriyi Sheets&#8217;te i\u015flemek, Google Docs&#8217;ta dinamik teklif belgeleri olu\u015fturmak, PDF&#8217;e d\u00f6n\u00fc\u015ft\u00fcrmek ve e-posta ile g\u00f6ndermek gibi t\u00fcm sihirli i\u015flemler Apps Script ile ger\u00e7ekle\u015fir. Kod yazma bilgisi gerektirse de, temel seviyede bile b\u00fcy\u00fck fark yarat\u0131r.\n    <\/li>\n<\/ul>\n<p>Bu \u00fc\u00e7 arac\u0131n entegrasyonuyla, m\u00fc\u015fteri taleplerinden nihai teklif dok\u00fcman\u0131na kadar t\u00fcm s\u00fcreci otomatikle\u015ftiren g\u00fc\u00e7l\u00fc bir sistem kurabilirsiniz. Bu, sadece operasyonel bir iyile\u015ftirme de\u011fil, ayn\u0131 zamanda m\u00fc\u015fteri deneyimini geli\u015ftiren ve i\u015finizi b\u00fcy\u00fcten stratejik bir yat\u0131r\u0131md\u0131r.<\/p>\n<h2>Ad\u0131m 1: \u0130htiya\u00e7 Analizi ve Form Tasar\u0131m\u0131 \u2013 M\u00fc\u015fteriden Hangi Bilgileri Almal\u0131y\u0131z?<\/h2>\n<p>Otomasyon s\u00fcrecinin ilk ve en kritik ad\u0131m\u0131, teklif olu\u015fturmak i\u00e7in hangi bilgilere ihtiyac\u0131n\u0131z oldu\u011funu belirlemektir. Bu ad\u0131m, sisteminizin temelini olu\u015fturacak ve ilerleyen a\u015famalarda ne kadar esnek veya kapsaml\u0131 olaca\u011f\u0131n\u0131 belirleyecektir. \u00d6ncelikle, her teklifte olmas\u0131 gereken standart bilgileri ve m\u00fc\u015fteriden al\u0131nmas\u0131 gereken de\u011fi\u015fken verileri listelemelisiniz.<\/p>\n<p><strong>\u0130htiya\u00e7 Analizi:<\/strong><\/p>\n<p>Teklifinizde yer alacak temel unsurlar\u0131 d\u00fc\u015f\u00fcn\u00fcn. Genellikle bunlar \u015funlar\u0131 i\u00e7erir:<\/p>\n<ul>\n<li>\n      <strong>M\u00fc\u015fteri Bilgileri:<\/strong> M\u00fc\u015fteri ad\u0131, \u015firket ad\u0131, e-posta adresi, telefon numaras\u0131, adresi (gerekirse).\n    <\/li>\n<li>\n      <strong>Proje\/Hizmet Detaylar\u0131:<\/strong> Proje ad\u0131, proje kapsam\u0131, istenen hizmetler (liste \u015feklinde), \u00f6zel istekler\/notlar.\n    <\/li>\n<li>\n      <strong>Fiyatland\u0131rma Bilgileri:<\/strong> Se\u00e7ilen hizmetlerin birim fiyatlar\u0131, miktar, indirimler, toplam tutar, \u00f6deme ko\u015fullar\u0131.\n    <\/li>\n<li>\n      <strong>Teslimat Bilgileri:<\/strong> Tahmini ba\u015flang\u0131\u00e7 tarihi, biti\u015f tarihi, teslim s\u00fcreleri.\n    <\/li>\n<li>\n      <strong>\u0130leti\u015fim\/Teklif Eden Bilgileri:<\/strong> Teklifi veren ki\u015finin ad\u0131, unvan\u0131, ileti\u015fim bilgileri.\n    <\/li>\n<\/ul>\n<p>Bu bilgileri belirledikten sonra, bu verileri m\u00fc\u015fteriden nas\u0131l alaca\u011f\u0131n\u0131z\u0131 d\u00fc\u015f\u00fcnmelisiniz. Google Forms, bu veri toplama s\u00fcrecini basitle\u015ftirmek i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r.<\/p>\n<p><strong>Google Forms ile Form Tasar\u0131m\u0131:<\/strong><\/p>\n<p>\u015eimdi Google Forms&#8217;a ge\u00e7elim ve bu bilgileri toplayacak bir form olu\u015ftural\u0131m:<\/p>\n<ol>\n<li>\n      <strong>Yeni Bir Form Olu\u015fturun:<\/strong> <a href=\"https:\/\/forms.google.com\/\" target=\"_blank\">Google Forms<\/a> adresine gidin ve &#8216;Bo\u015f&#8217; bir form ba\u015flat\u0131n. Formunuza &#8220;M\u00fc\u015fteri Teklif Talep Formu&#8221; gibi a\u00e7\u0131klay\u0131c\u0131 bir ba\u015fl\u0131k verin.\n    <\/li>\n<li>\n      <strong>Temel M\u00fc\u015fteri Bilgileri:<\/strong><\/p>\n<ul>\n<li>\n          &#8220;M\u00fc\u015fteri Ad\u0131 Soyad\u0131&#8221; (K\u0131sa yan\u0131t) &#8211; Gerekli\n        <\/li>\n<li>\n          &#8220;\u015eirket Ad\u0131&#8221; (K\u0131sa yan\u0131t) &#8211; Gerekli\n        <\/li>\n<li>\n          &#8220;E-posta Adresi&#8221; (K\u0131sa yan\u0131t, veri do\u011frulama ile e-posta format\u0131 kontrol\u00fc) &#8211; Gerekli\n        <\/li>\n<li>\n          &#8220;Telefon Numaras\u0131&#8221; (K\u0131sa yan\u0131t)\n        <\/li>\n<\/ul>\n<\/li>\n<li>\n      <strong>Proje Detaylar\u0131:<\/strong><\/p>\n<ul>\n<li>\n          &#8220;Proje Ba\u015fl\u0131\u011f\u0131\/Tan\u0131m\u0131&#8221; (K\u0131sa yan\u0131t veya Paragraf) &#8211; Gerekli\n        <\/li>\n<li>\n          &#8220;\u0130htiya\u00e7 Duyulan Hizmetler&#8221; (\u00c7oktan se\u00e7meli onay kutular\u0131): Buraya sunmu\u015f oldu\u011funuz hizmetleri listeleyin (\u00f6rn. Web Tasar\u0131m\u0131, SEO Optimizasyonu, Sosyal Medya Y\u00f6netimi, \u0130\u00e7erik \u00dcretimi). M\u00fc\u015fteri birden fazla se\u00e7im yapabilir. Bu k\u0131s\u0131m, teklifinizin dinamik olarak \u015fekillenmesi i\u00e7in anahtar noktalardan biridir.\n        <\/li>\n<li>\n          &#8220;\u00d6zel \u0130stekler\/Notlar&#8221; (Paragraf) &#8211; M\u00fc\u015fterinin ek detaylar veya \u00f6zel gereksinimleri belirtmesi i\u00e7in.\n        <\/li>\n<\/ul>\n<\/li>\n<li>\n      <strong>Fiyatland\u0131rma \u0130li\u015fkili Sorular (iste\u011fe ba\u011fl\u0131):<\/strong><\/p>\n<p>E\u011fer fiyatland\u0131rman\u0131z k\u0131smen m\u00fc\u015fteri se\u00e7imine ba\u011fl\u0131ysa, Forms i\u00e7inde bunu y\u00f6netebilirsiniz. Ancak genellikle fiyatland\u0131rma mant\u0131\u011f\u0131 Apps Script veya Sheets&#8217;te daha iyi ele al\u0131n\u0131r. Yine de, b\u00fct\u00e7e aral\u0131\u011f\u0131 gibi bir soru eklemek faydal\u0131 olabilir:<\/p>\n<ul>\n<li>\n          &#8220;Beklenen B\u00fct\u00e7e Aral\u0131\u011f\u0131&#8221; (\u00c7oktan se\u00e7meli): \u00d6rne\u011fin, &#8220;1000-3000 TL&#8221;, &#8220;3000-7000 TL&#8221;, &#8220;7000+ TL&#8221;. Bu, size proje b\u00fcy\u00fckl\u00fc\u011f\u00fc hakk\u0131nda bir fikir verir.\n        <\/li>\n<\/ul>\n<\/li>\n<li>\n      <strong>Form Ayarlar\u0131 ve Yan\u0131tlar:<\/strong><\/p>\n<ul>\n<li>\n          Form ayarlar\u0131ndan e-posta adreslerinin toplanmas\u0131n\u0131 etkinle\u015ftirebilirsiniz.\n        <\/li>\n<li>\n          En \u00f6nemlisi, yan\u0131tlar\u0131n otomatik olarak bir Google Sheets belgesine kaydedilmesini sa\u011flay\u0131n. Bunu form d\u00fczenleyicisinde &#8220;Yan\u0131tlar&#8221; sekmesine gidip, ye\u015fil Sheets simgesine t\u0131klayarak yapabilirsiniz. Yeni bir e-tablo olu\u015fturmay\u0131 se\u00e7in ve ona &#8220;M\u00fc\u015fteri Teklif Yan\u0131tlar\u0131&#8221; gibi a\u00e7\u0131klay\u0131c\u0131 bir isim verin. Bu e-tablo, otomasyon sisteminizin veri taban\u0131 olacakt\u0131r.\n        <\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p><div class=\"tip-box\">\n      Uzman \u0130pucu: Formunuzu sadece m\u00fc\u015fteri odakl\u0131 de\u011fil, ayn\u0131 zamanda kendi i\u00e7 s\u00fcre\u00e7lerinizi kolayla\u015ft\u0131racak \u015fekilde tasarlay\u0131n. \u00d6rne\u011fin, e\u011fer farkl\u0131 hizmetler farkl\u0131 ekipler taraf\u0131ndan y\u00fcr\u00fct\u00fcl\u00fcyorsa, &#8220;\u0130htiya\u00e7 Duyulan Hizmetler&#8221; b\u00f6l\u00fcm\u00fcndeki se\u00e7enekleri bu ekiplerin g\u00f6rev tan\u0131mlar\u0131yla uyumlu hale getirebilirsiniz. Ayr\u0131ca, formun sonuna bir &#8220;Formu G\u00f6nderen Ki\u015finin Ad\u0131&#8221; alan\u0131 ekleyerek, birden fazla ekip \u00fcyesinin ayn\u0131 formu doldurabildi\u011fi senaryolarda takip kolayl\u0131\u011f\u0131 sa\u011flayabilirsiniz.\n    <\/div>\n<\/p>\n<p>Formunuzu olu\u015fturduktan sonra, kendiniz doldurarak veya birka\u00e7 arkada\u015f\u0131n\u0131zdan test etmesini isteyerek her \u015feyin beklendi\u011fi gibi \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun. Form yan\u0131tlar\u0131n\u0131n Sheets belgenize do\u011fru bir \u015fekilde aktar\u0131ld\u0131\u011f\u0131n\u0131 kontrol edin. Bu ad\u0131m, t\u00fcm otomasyonunuzun sorunsuz \u00e7al\u0131\u015fmas\u0131n\u0131n temelini olu\u015fturur. Detayl\u0131 ve d\u00fc\u015f\u00fcn\u00fclm\u00fc\u015f bir form tasar\u0131m\u0131, daha sonraki kodlama ve belge olu\u015fturma s\u00fcre\u00e7lerini b\u00fcy\u00fck \u00f6l\u00e7\u00fcde basitle\u015ftirecektir.<\/p>\n<h2>Ad\u0131m 2: Google Sheets ile Veri Toplama ve \u015eablon Olu\u015fturma \u2013 Teklifler Nas\u0131l Depolan\u0131r ve \u015eekillendirilir?<\/h2>\n<p>Google Forms&#8217;u kullanarak m\u00fc\u015fteri bilgilerini ve proje detaylar\u0131n\u0131 ba\u015far\u0131yla toplad\u0131n\u0131z. \u015eimdi s\u0131ra bu verileri d\u00fczenli bir \u015fekilde depolamak ve teklif belgelerinizin dinamik yap\u0131s\u0131n\u0131 olu\u015fturmak i\u00e7in Google Sheets&#8217;i kullanmaya geldi. Sheets, sadece bir veri depolama arac\u0131 olman\u0131n \u00f6tesinde, ayn\u0131 zamanda karma\u015f\u0131k hesaplamalar yapabilece\u011finiz ve teklif \u015fablonlar\u0131n\u0131z i\u00e7in temel bir veri kayna\u011f\u0131 olu\u015fturabilece\u011finiz g\u00fc\u00e7l\u00fc bir platformdur.<\/p>\n<p><strong>Form Yan\u0131tlar\u0131n\u0131 Google Sheets&#8217;e Ba\u011flama:<\/strong><\/p>\n<p>Formunuzu olu\u015ftururken, &#8220;Yan\u0131tlar&#8221; sekmesinden otomatik olarak bir Google Sheets belgesi olu\u015fturmay\u0131 se\u00e7mi\u015ftiniz. Bu e-tablo, formunuza her yeni yan\u0131t geldi\u011finde otomatik olarak g\u00fcncellenecektir. Her form g\u00f6nderimi, Sheets&#8217;te yeni bir sat\u0131r olarak kaydedilecek ve her s\u00fctun, formunuzdaki bir soruya kar\u015f\u0131l\u0131k gelecektir. Bu, verilerinizin d\u00fczenli ve eri\u015filebilir olmas\u0131n\u0131 sa\u011flar.<\/p>\n<p><strong>Teklif \u015eablonu \u0130\u00e7in Veri Yap\u0131s\u0131 Olu\u015fturma:<\/strong><\/p>\n<p>Apps Script, teklifinizi olu\u015ftururken bu e-tablodaki verileri kullanacakt\u0131r. Bu nedenle, verilerinizi Apps Script&#8217;in kolayca eri\u015febilece\u011fi ve i\u015fleyebilece\u011fi bir formatta tutmak \u00f6nemlidir. Sheets belgenizde a\u015fa\u011f\u0131daki gibi bir yap\u0131 d\u00fc\u015f\u00fcnebilirsiniz:<\/p>\n<ol>\n<li>\n      <strong>&#8220;Form Yan\u0131tlar\u0131 1&#8221; Sayfas\u0131:<\/strong> Bu sayfa, Forms&#8217;tan gelen ham verileri i\u00e7erir. Bu sayfaya dokunmay\u0131n ve manuel de\u011fi\u015fiklikler yapmaktan ka\u00e7\u0131n\u0131n, \u00e7\u00fcnk\u00fc bu, otomasyonun tutarl\u0131l\u0131\u011f\u0131n\u0131 bozabilir.\n    <\/li>\n<li>\n      <strong>&#8220;Teklif Verileri&#8221; Sayfas\u0131 (Opsiyonel ama \u00d6nerilen):<\/strong> E\u011fer Forms&#8217;tan gelen verileri i\u015flemek (\u00f6rn. hizmet listesini ayr\u0131\u015ft\u0131rmak, fiyat hesaplamak) veya ek manuel bilgiler eklemek isterseniz, bu sayfay\u0131 kullanabilirsiniz. &#8220;Form Yan\u0131tlar\u0131 1&#8221; sayfas\u0131ndaki ilgili verileri <code>IMPORTRANGE<\/code> veya basit <code>TRANSPOSE<\/code> fonksiyonlar\u0131yla buraya \u00e7ekebilir ve \u00fczerine manuel notlar veya hesaplamalar ekleyebilirsiniz.\n    <\/li>\n<li>\n      <strong>&#8220;Hizmetler ve Fiyatlar&#8221; Sayfas\u0131:<\/strong> Bu sayfa, sunmu\u015f oldu\u011funuz t\u00fcm hizmetlerin bir listesini ve ilgili birim fiyatlar\u0131n\u0131 i\u00e7ermelidir. Bu, teklifinizi olu\u015ftururken fiyatland\u0131rmay\u0131 dinamik hale getirmenize olanak tan\u0131r.<\/p>\n<table border=\"1\">\n<thead>\n<tr>\n<th>Hizmet Ad\u0131<\/th>\n<th>Birim Fiyat (TL)<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Web Tasar\u0131m\u0131<\/td>\n<td>5000<\/td>\n<td>\u00d6zel web sitesi tasar\u0131m\u0131 ve geli\u015ftirme<\/td>\n<\/tr>\n<tr>\n<td>SEO Optimizasyonu<\/td>\n<td>1500<\/td>\n<td>Ayl\u0131k SEO hizmetleri<\/td>\n<\/tr>\n<tr>\n<td>Sosyal Medya Y\u00f6netimi<\/td>\n<td>1000<\/td>\n<td>Ayl\u0131k sosyal medya hesap y\u00f6netimi<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu tablo yap\u0131s\u0131, Apps Script&#8217;in se\u00e7ilen hizmetlere g\u00f6re fiyatlar\u0131 otomatik olarak \u00e7ekmesini sa\u011flayacakt\u0131r. \u00d6rne\u011fin, m\u00fc\u015fteri &#8220;Web Tasar\u0131m\u0131&#8221; ve &#8220;SEO Optimizasyonu&#8221; se\u00e7tiyse, script bu tablodan ilgili fiyatlar\u0131 bulup teklife ekleyebilir.<\/p>\n<\/li>\n<\/ol>\n<p><strong>Teklif \u015eablonu Olu\u015fturma (Google Docs):<\/strong><\/p>\n<p>\u015eimdi s\u0131ra, Apps Script&#8217;in dolduraca\u011f\u0131 dinamik teklif belgesini haz\u0131rlamaya geldi. Bunun i\u00e7in Google Docs&#8217;u kullanaca\u011f\u0131z.<\/p>\n<ol>\n<li>\n      <strong>Yeni Bir Google Docs Belgesi Olu\u015fturun:<\/strong> <a href=\"https:\/\/docs.google.com\/\" target=\"_blank\">Google Docs<\/a>&#8216;a gidin ve &#8216;Bo\u015f&#8217; bir belge ba\u015flat\u0131n. Belgenizi &#8220;Teklif \u015eablonu&#8221; olarak kaydedin.\n    <\/li>\n<li>\n      <strong>\u015eablonu Tasarlay\u0131n:<\/strong> Bu belge, m\u00fc\u015fterilerinize g\u00f6nderece\u011finiz nihai teklifin g\u00f6rsel tasar\u0131m\u0131n\u0131 ve standart metinlerini i\u00e7erecektir. Logo, \u015firket bilgileri, genel bir giri\u015f metni, hizmet a\u00e7\u0131klamalar\u0131 ve kapan\u0131\u015f gibi b\u00f6l\u00fcmleri ekleyin.\n    <\/li>\n<li>\n      <strong>Yer Tutucular Ekleyin:<\/strong> Apps Script&#8217;in otomatik olarak dolduraca\u011f\u0131 alanlar i\u00e7in \u00f6zel yer tutucular kullan\u0131n. Bu yer tutucular, genellikle \u00e7ift s\u00fcsl\u00fc parantez i\u00e7inde <code><code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">{{MUSTERI_ADI}}<\/code><\/code>, <code><code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">{{PROJE_BASLIGI}}<\/code><\/code>, <code><code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">{{SECILEN_HIZMETLER}}<\/code><\/code>, <code><code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">{{TOPLAM_FIYAT}}<\/code><\/code> gibi g\u00f6r\u00fcn\u00fcr.<\/p>\n<p>\u00d6rnek Teklif \u015eablonu Yap\u0131s\u0131:<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\nSay\u0131n {{MUSTERI_ADI}},\n\n{{SIRKET_ADI}} olarak, {{PROJE_BASLIGI}} ba\u015fl\u0131kl\u0131 projeniz i\u00e7in haz\u0131rlad\u0131\u011f\u0131m\u0131z teklifi sunmaktan memnuniyet duyar\u0131z.\n\n<strong>Proje Kapsam\u0131:<\/strong>\n{{PROJE_ACIKLAMASI}}\n\n<strong>Se\u00e7ilen Hizmetler:<\/strong>\n{{SECILEN_HIZMETLER_LISTESI}}\n\n<strong>Teklif Detaylar\u0131:<\/strong>\nToplam Fiyat: {{TOPLAM_FIYAT}} TL\nTahmini Teslim S\u00fcresi: {{TESLIM_SURESI}}\n\nSayg\u0131lar\u0131m\u0131zla,\n{{TEKLIF_VEREN_KISI}}\n{{TEKLIF_VEREN_UNVANI}}\n      <\/pre>\n<p><\/code><\/p>\n<p>Bu yer tutucular\u0131n, Sheets'teki s\u00fctun ba\u015fl\u0131klar\u0131n\u0131zla veya Apps Script'te tan\u0131mlayaca\u011f\u0131n\u0131z de\u011fi\u015fken adlar\u0131yla tutarl\u0131 olmas\u0131 \u00f6nemlidir. \u00d6rne\u011fin, formda \"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\" s\u00fctunu varsa, \u015fablonda <code>{{MUSTERI_ADI}}<\/code> kullanabilirsiniz.<\/p>\n<\/li>\n<li>\n      <strong>Teklif Listesi \u0130\u00e7in Yer Tutucu:<\/strong> \u00d6zellikle \"Se\u00e7ilen Hizmetler\" gibi dinamik listeler i\u00e7in, Docs \u015fablonunuzda bir yer tutucuya ihtiyac\u0131n\u0131z olacak. Apps Script, bu yer tutucuyu Sheets'ten ald\u0131\u011f\u0131 verilere g\u00f6re bir maddeleme listesine veya tabloya d\u00f6n\u00fc\u015ft\u00fcrecektir. Bu ad\u0131m, teklifinizin dinamikli\u011fini art\u0131racak ve her m\u00fc\u015fteriye \u00f6zel bir i\u00e7erik sunmas\u0131n\u0131 sa\u011flayacakt\u0131r.\n    <\/li>\n<\/ol>\n<p><div class=\"tip-box\">\n      Uzman \u0130pucu: Teklif \u015fablonunuzda sadece metin yer tutucular\u0131 de\u011fil, ayn\u0131 zamanda g\u00f6rsel yer tutucular\u0131 da kullanabilirsiniz. \u00d6rne\u011fin, m\u00fc\u015fterinin projesine \u00f6zel bir resim veya grafik eklemek isterseniz, \u015fablonda bir g\u00f6rsel i\u00e7in bo\u015f bir alan b\u0131rak\u0131p, Apps Script ile bu alan\u0131 dinamik olarak doldurabilirsiniz. Ancak bu daha ileri d\u00fczey bir uygulama olacakt\u0131r. Ba\u015flang\u0131\u00e7 i\u00e7in sadece metin yer tutucular\u0131na odaklanmak yeterlidir.\n    <\/div>\n<\/p>\n<p>Bu a\u015famay\u0131 tamamlad\u0131\u011f\u0131n\u0131zda, elinizde m\u00fc\u015fteri verilerini depolayan bir Google Sheet ve bu verilere g\u00f6re ki\u015fiselle\u015ftirilebilecek bir Google Docs teklif \u015fablonu olacak. Bir sonraki ad\u0131mda, bu iki arac\u0131 Apps Script ile birbirine ba\u011flayarak sihrin nas\u0131l ger\u00e7ekle\u015fti\u011fini g\u00f6rece\u011fiz.<\/p>\n<h2>Ad\u0131m 3: Apps Script ile Otomasyonun Kalbi \u2013 Sihri Ger\u00e7ekle\u015ftiren Kod Nas\u0131l Yaz\u0131l\u0131r?<\/h2>\n<p>Google Forms'tan veri toplad\u0131n\u0131z ve Google Docs'ta bir teklif \u015fablonu haz\u0131rlad\u0131n\u0131z. \u015eimdi s\u0131ra, bu iki par\u00e7ay\u0131 bir araya getirip otomatik teklif olu\u015fturma s\u00fcrecini ba\u015flatan Apps Script kodunu yazmaya geldi. Apps Script, Google Workspace uygulamalar\u0131n\u0131 birbirine ba\u011flayan ve \u00f6zelle\u015ftirilmi\u015f i\u015flevler olu\u015fturman\u0131za olanak tan\u0131yan g\u00fc\u00e7l\u00fc bir platformdur. JavaScript tabanl\u0131 olmas\u0131 sayesinde, web geli\u015ftirme bilgisi olanlar i\u00e7in olduk\u00e7a tan\u0131d\u0131k gelecektir.<\/p>\n<p><strong>Apps Script Ortam\u0131na Giri\u015f:<\/strong><\/p>\n<p>Apps Script projelerinizi genellikle Google Sheets veya Google Docs belgenizden ba\u015flat\u0131rs\u0131n\u0131z:<\/p>\n<ol>\n<li>\n      Google Sheets belgenizi a\u00e7\u0131n (\"M\u00fc\u015fteri Teklif Yan\u0131tlar\u0131\" isimli Sheets belgesi).\n    <\/li>\n<li>\n      \u00dcst men\u00fcden <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">Uzant\u0131lar > Apps Script<\/code> yolunu izleyin. Bu, yeni bir Apps Script projesi (genellikle \"Betik D\u00fczenleyici\" olarak an\u0131l\u0131r) a\u00e7acakt\u0131r.\n    <\/li>\n<li>\n      Kar\u015f\u0131n\u0131za <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">Code.gs<\/code> ad\u0131nda varsay\u0131lan bir dosya ve i\u00e7inde bo\u015f bir <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">myFunction()<\/code> olacakt\u0131r. Buraya kodlar\u0131m\u0131z\u0131 yazaca\u011f\u0131z.\n    <\/li>\n<\/ol>\n<p><strong>Temel \u0130\u015f Ak\u0131\u015f\u0131 ve Trigger Kurulumu:<\/strong><\/p>\n<p>Otomasyonun ana mant\u0131\u011f\u0131 \u015fudur: M\u00fc\u015fteri formu her g\u00f6nderdi\u011finde, Apps Script otomatik olarak tetiklenir, form yan\u0131tlar\u0131n\u0131 al\u0131r, Google Docs \u015fablonunu kopyalar, yer tutucular\u0131 bu yan\u0131tlarla doldurur, belgeyi PDF'e d\u00f6n\u00fc\u015ft\u00fcr\u00fcr ve m\u00fc\u015fteriye e-posta ile g\u00f6nderir.<\/p>\n<p>Bu ak\u0131\u015f\u0131 ba\u015flatmak i\u00e7in bir \"trigger\" (tetikleyici) ayarlamam\u0131z gerekecek. Trigger, belirli bir olaya (\u00f6rne\u011fin, bir formun g\u00f6nderilmesi) yan\u0131t olarak bir Apps Script fonksiyonunu \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p><strong>1. <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code> Fonksiyonunu Olu\u015fturma:<\/strong><\/p>\n<p>Bu fonksiyon, Google Form'unuzdan yeni bir yan\u0131t geldi\u011finde \u00e7al\u0131\u015facak ana fonksiyondur. Apps Script'te, form g\u00f6nderim olay\u0131n\u0131 dinlemek i\u00e7in \u00f6zel bir fonksiyon imzal\u0131yoruz.<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\nfunction onFormSubmit(e) {\n  \/\/ Bu fonksiyon, Google Form'a yeni bir yan\u0131t geldi\u011finde otomatik olarak tetiklenir.\n  \/\/ 'e' nesnesi, form g\u00f6nderimi ile ilgili t\u00fcm verileri i\u00e7erir.\n\n  \/\/ 1. Gelen Verileri Alma\n  \/\/ Form yan\u0131tlar\u0131 'e.namedValues' veya 'e.values' i\u00e7inde bulunur.\n  \/\/ 'e.namedValues', s\u00fctun ba\u015fl\u0131klar\u0131n\u0131 anahtar olarak kullanarak verilere eri\u015fimi kolayla\u015ft\u0131r\u0131r.\n  var response = e.namedValues;\n\n  \/\/ Sheets'teki \"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\" s\u00fctununa kar\u015f\u0131l\u0131k gelen de\u011feri alal\u0131m.\n  \/\/ Not: S\u00fctun ba\u015fl\u0131klar\u0131 tam olarak Forms'taki soru ba\u015fl\u0131klar\u0131n\u0131zla e\u015fle\u015fmelidir.\n  var musteriAdi = response[\"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\"] ? response[\"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\"][0] : \"Bilinmiyor\";\n  var musteriEposta = response[\"E-posta Adresi\"] ? response[\"E-posta Adresi\"][0] : \"bilinmiyor@example.com\";\n  var sirketAdi = response[\"\u015eirket Ad\u0131\"] ? response[\"\u015eirket Ad\u0131\"][0] : \"Bilinmiyor\";\n  var projeBasligi = response[\"Proje Ba\u015fl\u0131\u011f\u0131\/Tan\u0131m\u0131\"] ? response[\"Proje Ba\u015fl\u0131\u011f\u0131\/Tan\u0131m\u0131\"][0] : \"Belirtilmemi\u015f Proje\";\n  \n  \/\/ \u00c7oktan se\u00e7meli onay kutular\u0131ndan gelen hizmetler genellikle virg\u00fclle ayr\u0131lm\u0131\u015f bir dizi olarak gelir.\n  var secilenHizmetlerArray = response[\"\u0130htiya\u00e7 Duyulan Hizmetler\"] ? response[\"\u0130htiya\u00e7 Duyulan Hizmetler\"][0].split(\", \") : [];\n\n  \/\/ G\u00fcncel tarih\n  var today = new Date();\n  var tarih = Utilities.formatDate(today, Session.getScriptTimeZone(), \"dd\/MM\/yyyy\");\n\n  \/\/ Loglama yaparak gelen veriyi kontrol edebiliriz (Hata ay\u0131klama i\u00e7in \u00f6nemlidir)\n  Logger.log(\"Yeni form yan\u0131t\u0131 al\u0131nd\u0131. M\u00fc\u015fteri: \" + musteriAdi + \", E-posta: \" + musteriEposta);\n  Logger.log(\"Se\u00e7ilen Hizmetler: \" + secilenHizmetlerArray.join(\", \"));\n\n  \/\/ Di\u011fer ad\u0131mlar (Teklif olu\u015fturma, PDF'e d\u00f6n\u00fc\u015ft\u00fcrme, E-posta g\u00f6nderme) burada \u00e7a\u011fr\u0131lacak.\n  \/\/ \u00d6rne\u011fin: generateProposal(musteriAdi, musteriEposta, projeBasligi, secilenHizmetlerArray, tarih);\n}\n  <\/pre>\n<p><\/code><\/p>\n<p><strong>2. Trigger Kurulumu:<\/strong><\/p>\n<p>Apps Script d\u00fczenleyicisinde sol taraftaki men\u00fcden \"Tetikleyiciler\" (saat simgesi) se\u00e7ene\u011fine t\u0131klay\u0131n. Sa\u011f alttaki \"Tetikleyici ekle\" butonuna bas\u0131n ve a\u015fa\u011f\u0131daki ayarlar\u0131 yap\u0131n:<\/p>\n<ul>\n<li>\n      <strong>\u00c7al\u0131\u015ft\u0131r\u0131lacak i\u015flev se\u00e7in:<\/strong> <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code>\n    <\/li>\n<li>\n      <strong>Olay kayna\u011f\u0131n\u0131 se\u00e7in:<\/strong> <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">E-tablodan<\/code> (\u00c7\u00fcnk\u00fc form yan\u0131tlar\u0131 bu e-tabloya ba\u011fl\u0131d\u0131r)\n    <\/li>\n<li>\n      <strong>Olay t\u00fcr\u00fcn\u00fc se\u00e7in:<\/strong> <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">Form g\u00f6nderildi\u011finde<\/code>\n    <\/li>\n<li>\n      Kaydedin.\n    <\/li>\n<\/ul>\n<p>Bu trigger sayesinde, Google Form'unuz her g\u00f6nderildi\u011finde <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code> fonksiyonu otomatik olarak \u00e7al\u0131\u015facak ve <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">e<\/code> parametresi arac\u0131l\u0131\u011f\u0131yla g\u00f6nderilen t\u00fcm verileri fonksiyona iletecektir.<\/p>\n<p><strong>Apps Script Yetkilendirmeleri:<\/strong><\/p>\n<p>Trigger'\u0131 kaydetti\u011finizde veya script'i ilk kez \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, Google sizden Apps Script'in Google Drive, Docs, Sheets ve Gmail gibi hizmetlerinize eri\u015fimi i\u00e7in izin isteyecektir. Bu izinleri dikkatlice okuyun ve onaylay\u0131n. Script'in \u00e7al\u0131\u015fabilmesi i\u00e7in bu izinler gereklidir.<\/p>\n<p>Bu ad\u0131m\u0131 tamamlad\u0131\u011f\u0131n\u0131zda, formunuzdan gelen verileri yakalayabilen temel bir Apps Script altyap\u0131n\u0131z olacak. Bir sonraki ad\u0131mda, bu verileri kullanarak nas\u0131l dinamik bir teklif belgesi olu\u015fturaca\u011f\u0131m\u0131z\u0131 ve m\u00fc\u015fteriye e-posta ile g\u00f6nderece\u011fimizi detayland\u0131raca\u011f\u0131z.<\/p>\n<h2>Ad\u0131m 4: Dinamik Teklif Belgesi Olu\u015fturma ve E-posta G\u00f6nderme \u2013 Profesyonel \u00c7\u0131kt\u0131 Nas\u0131l Sa\u011flan\u0131r?<\/h2>\n<p>Apps Script, <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code> fonksiyonu arac\u0131l\u0131\u011f\u0131yla form verilerini yakalad\u0131. \u015eimdi bu verileri kullanarak, Google Docs'ta haz\u0131rlad\u0131\u011f\u0131n\u0131z \u015fablonu ki\u015fiselle\u015ftirilmi\u015f bir teklife d\u00f6n\u00fc\u015ft\u00fcrece\u011fiz, PDF olarak kaydedece\u011fiz ve son olarak m\u00fc\u015fteriye e-posta ile g\u00f6nderece\u011fiz.<\/p>\n<p><strong>Dinamik Teklif Belgesi Olu\u015fturma:<\/strong><\/p>\n<p>Bu s\u00fcre\u00e7te Google Drive ve Google Docs servislerini kullanaca\u011f\u0131z. Apps Script'in sundu\u011fu <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">DriveApp<\/code> ve <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">DocumentApp<\/code> s\u0131n\u0131flar\u0131 bu i\u015flemleri yapmam\u0131za olanak tan\u0131r.<\/p>\n<ol>\n<li>\n      <strong>\u015eablonu Kopyalama:<\/strong> Orijinal \u015fablon belgemizi do\u011frudan de\u011fi\u015ftirmek yerine, \u00f6nce bir kopyas\u0131n\u0131 olu\u015fturaca\u011f\u0131z. Bu, her yeni teklif i\u00e7in temiz bir ba\u015flang\u0131\u00e7 yapmam\u0131z\u0131 sa\u011flar.\n    <\/li>\n<li>\n      <strong>Yer Tutucular\u0131 De\u011fi\u015ftirme:<\/strong> Kopyalanan belgenin i\u00e7eri\u011fini al\u0131p, <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">{{MUSTERI_ADI}}<\/code> gibi yer tutucular\u0131, formdan gelen ger\u00e7ek verilerle de\u011fi\u015ftirece\u011fiz.\n    <\/li>\n<li>\n      <strong>Dinamik Liste Olu\u015fturma (Hizmetler):<\/strong> E\u011fer m\u00fc\u015fteriniz birden fazla hizmet se\u00e7tiyse, bu hizmetleri bir maddeleme listesi olarak teklife eklemek gerekir. Bunu, se\u00e7ilen hizmetleri d\u00f6ng\u00fcye alarak ve her birini yeni bir sat\u0131r olarak belgeye ekleyerek yapabiliriz.\n    <\/li>\n<\/ol>\n<p><strong>E-posta ile G\u00f6nderme:<\/strong><\/p>\n<p>Belgeyi PDF format\u0131nda olu\u015fturduktan sonra, Google'\u0131n <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">GmailApp<\/code> veya <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">MailApp<\/code> hizmetlerini kullanarak teklifi m\u00fc\u015fterinin e-posta adresine g\u00f6nderece\u011fiz. <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">MailApp<\/code> daha basit e-postalar i\u00e7in yeterli olabilirken, <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">GmailApp<\/code> daha fazla kontrol (\u00f6rn. taslak olu\u015fturma, etiketleme) sa\u011flar.<\/p>\n<p>\u015eimdi <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code> fonksiyonumuza bu ad\u0131mlar\u0131 ekleyelim:<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\nfunction onFormSubmit(e) {\n  var response = e.namedValues;\n\n  var musteriAdi = response[\"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\"] ? response[\"M\u00fc\u015fteri Ad\u0131 Soyad\u0131\"][0] : \"De\u011ferli M\u00fc\u015fteri\";\n  var musteriEposta = response[\"E-posta Adresi\"] ? response[\"E-posta Adresi\"][0] : \"destek@sirketiniz.com\";\n  var sirketAdi = response[\"\u015eirket Ad\u0131\"] ? response[\"\u015eirket Ad\u0131\"][0] : \"Belirtilmemi\u015f \u015eirket\";\n  var projeBasligi = response[\"Proje Ba\u015fl\u0131\u011f\u0131\/Tan\u0131m\u0131\"] ? response[\"Proje Ba\u015fl\u0131\u011f\u0131\/Tan\u0131m\u0131\"][0] : \"Proje Teklifi\";\n  var projeAciklamasi = response[\"\u00d6zel \u0130stekler\/Notlar\"] ? response[\"\u00d6zel \u0130stekler\/Notlar\"][0] : \"M\u00fc\u015fteri \u00f6zel istek belirtmemi\u015ftir.\";\n  \n  var secilenHizmetlerArray = response[\"\u0130htiya\u00e7 Duyulan Hizmetler\"] ? response[\"\u0130htiya\u00e7 Duyulan Hizmetler\"][0].split(\", \") : [];\n\n  var today = new Date();\n  var tarih = Utilities.formatDate(today, Session.getScriptTimeZone(), \"dd\/MM\/yyyy\");\n\n  \/\/ --- Sabitler (Kendi ID'leriniz ve Bilgilerinizle De\u011fi\u015ftirin) ---\n  var TEMPLATE_ID = \"123abcDEF_Sizin_Doc_Sablon_IDniz\"; \/\/ Google Docs teklif \u015fablonunuzun ID'si\n  var FOLDER_ID = \"xyz123_Sizin_Teklif_Klasor_IDniz\"; \/\/ Olu\u015fturulan teklifleri kaydedece\u011finiz Drive klas\u00f6r\u00fcn\u00fcn ID'si\n  var SERVICES_SHEET_NAME = \"Hizmetler ve Fiyatlar\"; \/\/ Sheets'teki hizmetlerin oldu\u011fu sayfa ad\u0131\n  var TEKLIF_VEREN_KISI = \"Ali Can\";\n  var TEKLIF_VEREN_UNVANI = \"Sat\u0131\u015f M\u00fcd\u00fcr\u00fc\";\n  var FIRMA_ADI = \"Sizin \u015eirketiniz A.\u015e.\";\n  var FIRMA_EPOSTA = \"info@sirketiniz.com\";\n  \/\/ -----------------------------------------------------------------\n\n  \/\/ Hizmetler ve Fiyatlar sayfas\u0131n\u0131 al\n  var ss = SpreadsheetApp.getActiveSpreadsheet();\n  var servicesSheet = ss.getSheetByName(SERVICES_SHEET_NAME);\n  var servicesData = servicesSheet.getDataRange().getValues(); \/\/ T\u00fcm veriyi al\n\n  var hizmetlerListesiText = \"\";\n  var toplamFiyat = 0;\n\n  \/\/ Ba\u015fl\u0131klar\u0131 atla (ilk sat\u0131r)\n  for (var i = 1; i < servicesData.length; i++) {\n    var serviceName = servicesData[i][0]; \/\/ Hizmet Ad\u0131\n    var servicePrice = servicesData[i][1]; \/\/ Birim Fiyat\n\n    if (secilenHizmetlerArray.includes(serviceName)) {\n      hizmetlerListesiText += \"- \" + serviceName + \" (\" + servicePrice + \" TL)\\n\";\n      toplamFiyat += parseFloat(servicePrice); \/\/ Fiyat\u0131 toplam fiyata ekle\n    }\n  }\n\n  \/\/ --- 1. Teklif Belgesini Olu\u015fturma ---\n  var templateFile = DriveApp.getFileById(TEMPLATE_ID);\n  var folder = DriveApp.getFolderById(FOLDER_ID);\n  var newFileName = musteriAdi + \" - \" + projeBasligi + \" Teklifi - \" + tarih;\n\n  \/\/ \u015eablon dosyas\u0131n\u0131 kopyala ve yeni ad\u0131yla klas\u00f6re kaydet\n  var newFile = templateFile.makeCopy(newFileName, folder);\n  var doc = DocumentApp.open(newFile);\n  var body = doc.getBody();\n\n  \/\/ Yer tutucular\u0131 de\u011fi\u015ftir\n  body.replaceText(\"{{MUSTERI_ADI}}\", musteriAdi);\n  body.replaceText(\"{{SIRKET_ADI}}\", sirketAdi);\n  body.replaceText(\"{{PROJE_BASLIGI}}\", projeBasligi);\n  body.replaceText(\"{{PROJE_ACIKLAMASI}}\", projeAciklamasi);\n  body.replaceText(\"{{SECILEN_HIZMETLER_LISTESI}}\", hizmetlerListesiText.trim()); \/\/ Trim bo\u015fluklar\u0131 temizler\n  body.replaceText(\"{{TOPLAM_FIYAT}}\", toplamFiyat.toFixed(2)); \/\/ \u0130ki ondal\u0131k basama\u011fa yuvarla\n  body.replaceText(\"{{TESLIM_SURESI}}\", \"4-6 Hafta\"); \/\/ \u00d6rnek olarak sabit bir de\u011fer\n  body.replaceText(\"{{TEKLIF_VEREN_KISI}}\", TEKLIF_VEREN_KISI);\n  body.replaceText(\"{{TEKLIF_VEREN_UNVANI}}\", TEKLIF_VEREN_UNVANI);\n  body.replaceText(\"{{FIRMA_ADI}}\", FIRMA_ADI);\n\n  doc.saveAndClose(); \/\/ De\u011fi\u015fiklikleri kaydet ve belgeyi kapat\n\n  \/\/ --- 2. Belgeyi PDF'e D\u00f6n\u00fc\u015ft\u00fcrme ve E-posta G\u00f6nderme ---\n  var pdfBlob = newFile.getAs(MimeType.PDF);\n  pdfBlob.setName(newFileName + \".pdf\"); \/\/ PDF dosya ad\u0131n\u0131 belirle\n\n  var emailSubject = FIRMA_ADI + \" | Proje Teklifiniz: \" + projeBasligi;\n  var emailBody = \"Merhaba \" + musteriAdi + \",\\n\\n\" +\n                  FIRMA_ADI + \" olarak, '\" + projeBasligi + \"' projeniz i\u00e7in haz\u0131rlad\u0131\u011f\u0131m\u0131z teklifi ekte bulabilirsiniz.\\n\\n\" +\n                  \"Herhangi bir sorunuz olursa l\u00fctfen bizimle ileti\u015fime ge\u00e7mekten \u00e7ekinmeyin.\\n\\n\" +\n                  \"Sayg\u0131lar\u0131m\u0131zla,\\n\" +\n                  TEKLIF_VEREN_KISI + \"\\n\" +\n                  FIRMA_ADI;\n\n  MailApp.sendEmail({\n    to: musteriEposta,\n    subject: emailSubject,\n    body: emailBody,\n    name: FIRMA_ADI, \/\/ G\u00f6nderen ad\u0131n\u0131 belirler\n    attachments: [pdfBlob] \/\/ PDF'i ek olarak g\u00f6nder\n  });\n\n  Logger.log(\"Teklif '\" + newFileName + \"' olu\u015fturuldu ve \" + musteriEposta + \" adresine g\u00f6nderildi.\");\n}\n  <\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki kodu kendi Apps Script projenize kopyalay\u0131p yap\u0131\u015ft\u0131r\u0131n. <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">TEMPLATE_ID<\/code> ve <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">FOLDER_ID<\/code> de\u011fi\u015fkenlerini kendi Google Docs \u015fablonunuzun ve Drive klas\u00f6r\u00fcn\u00fcz\u00fcn ID'leri ile de\u011fi\u015ftirmelisiniz. Bu ID'leri, ilgili dosya veya klas\u00f6r\u00fcn URL'sinden kolayca bulabilirsiniz.<\/p>\n<p><strong>Ger\u00e7ek D\u00fcnya Senaryosu: Freelancer Ajansta Teklif Otomasyonu<\/strong><\/p>\n<p>K\u00fc\u00e7\u00fck bir web tasar\u0131m ajans\u0131 d\u00fc\u015f\u00fcnelim. Ajans, gelen her yeni proje talebi i\u00e7in manuel olarak teklif haz\u0131rlamak zorunda kal\u0131yor. Bu s\u00fcre\u00e7, haftada ortalama 5-7 saatlerini al\u0131yor ve bazen aceleyle yap\u0131lan hatalar y\u00fcz\u00fcnden m\u00fc\u015fteri ili\u015fkilerinde sorunlar ya\u015fanabiliyor. Ajans, bu rehberdeki ad\u0131mlar\u0131 takip ederek bir otomasyon sistemi kurdu. Art\u0131k m\u00fc\u015fteriler, ajans\u0131n web sitesindeki bir Google Form'u dolduruyor. Form g\u00f6nderildikten saniyeler sonra, m\u00fc\u015fteri se\u00e7ti\u011fi hizmetlere ve belirtti\u011fi detaylara g\u00f6re ki\u015fiselle\u015ftirilmi\u015f, PDF format\u0131nda bir teklifi e-posta kutusunda buluyor. Ajans sahipleri ise Drive klas\u00f6rlerinde olu\u015fturulan t\u00fcm tekliflerin d\u00fczenli bir kayd\u0131na sahip oluyor. Bu sayede, ayda 20-30 saatlik bir zaman tasarrufu sa\u011flan\u0131rken, tekliflerin tutarl\u0131l\u0131\u011f\u0131 ve profesyonelli\u011fi art\u0131r\u0131lm\u0131\u015f, hata oran\u0131 s\u0131f\u0131ra indirilmi\u015ftir. Bu zaman\u0131 yeni m\u00fc\u015fterilere odaklanarak veya mevcut projelere daha fazla de\u011fer katarak kullanabiliyorlar.<\/p>\n<p><div class=\"tip-box\">\n      Uzman \u0130pucu: Teklifinizi e-posta ile g\u00f6nderirken, sadece PDF eklemek yerine e-posta g\u00f6vdesini de dinamikle\u015ftirebilirsiniz. \u00d6rne\u011fin, m\u00fc\u015fterinin ad\u0131yla ba\u015flayan samimi bir kar\u015f\u0131lama metni ve projenin k\u0131sa bir \u00f6zeti e-postan\u0131n a\u00e7\u0131lma oran\u0131n\u0131 ve m\u00fc\u015fteri etkile\u015fimini art\u0131rabilir. Ayr\u0131ca, Drive'da olu\u015fturulan teklif dosyas\u0131n\u0131n URL'sini de Sheets'teki ilgili sat\u0131ra kaydederek daha sonra kolayca eri\u015fim sa\u011flayabilirsiniz.\n    <\/div>\n<\/p>\n<p>Bu ad\u0131mlar\u0131 ba\u015far\u0131yla tamamlad\u0131\u011f\u0131n\u0131zda, m\u00fc\u015fteri teklif talebinden, otomatik PDF teklifi olu\u015fturup e-posta ile g\u00f6ndermeye kadar t\u00fcm s\u00fcreci otomatikle\u015ftiren g\u00fc\u00e7l\u00fc bir sistem kurmu\u015f olacaks\u0131n\u0131z. Bu, i\u015finizin verimlili\u011fini ve profesyonelli\u011fini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131racakt\u0131r.<\/p>\n<h2>\u0130leri D\u00fczey \u0130pu\u00e7lar\u0131 ve Entegrasyonlar \u2013 Sistemimizi Nas\u0131l Geli\u015ftirebiliriz?<\/h2>\n<p>Temel otomasyon sisteminizi kurduktan sonra, Google Forms, Sheets ve Apps Script kombinasyonunu kullanarak yeteneklerini daha da geni\u015fletebilir ve i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 daha da optimize edebilirsiniz. \u0130\u015fte sisteminizi bir \u00fcst seviyeye ta\u015f\u0131yacak baz\u0131 ileri d\u00fczey ipu\u00e7lar\u0131 ve entegrasyon fikirleri:<\/p>\n<ol>\n<li>\n      <strong>Basit bir CRM Entegrasyonu:<\/strong><\/p>\n<p>Olu\u015fturdu\u011funuz \"M\u00fc\u015fteri Teklif Yan\u0131tlar\u0131\" Sheets belgesini basit bir m\u00fc\u015fteri ili\u015fkileri y\u00f6netimi (CRM) arac\u0131 olarak kullanabilirsiniz. <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">onFormSubmit<\/code> fonksiyonunda, her yeni teklif g\u00f6nderildi\u011finde, Sheets'e teklif durumu (\u00f6rne\u011fin \"G\u00f6nderildi\"), g\u00f6nderim tarihi, teklifin Drive URL'si gibi ek s\u00fctunlar ekleyebilir ve bu bilgileri otomatik olarak doldurabilirsiniz. Daha sonra bu tabloda manuel olarak \"Kazan\u0131ld\u0131\", \"Kaybedildi\" gibi durumlar\u0131 g\u00fcncelleyerek sat\u0131\u015f hatt\u0131n\u0131z\u0131 takip edebilirsiniz.<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\n  \/\/ Teklif verilerini Sheets'e kaydetme (onFormSubmit fonksiyonunun sonuna eklenebilir)\n  var sheet = ss.getSheetByName(\"Form Yan\u0131tlar\u0131 1\"); \/\/ Yan\u0131tlar\u0131n geldi\u011fi sayfa\n  var lastRow = sheet.getLastRow();\n\n  \/\/ Yeni s\u00fctunlar ekleyin (E\u011fer Sheets'te bu s\u00fctunlar yoksa, manuel olarak eklemeniz gerekir)\n  sheet.getRange(lastRow, sheet.getLastColumn() + 1).setValue(new Date()); \/\/ G\u00f6nderim Tarihi\n  sheet.getRange(lastRow, sheet.getLastColumn() + 2).setValue(\"G\u00f6nderildi\"); \/\/ Teklif Durumu\n  sheet.getRange(lastRow, sheet.getLastColumn() + 3).setValue(newFile.getUrl()); \/\/ Teklif URL'si\n      <\/pre>\n<p><\/code>\n    <\/li>\n<li>\n      <strong>Daha Geli\u015fmi\u015f Fiyatland\u0131rma Motorlar\u0131:<\/strong><\/p>\n<p>\"Hizmetler ve Fiyatlar\" sayfan\u0131z\u0131 daha karma\u015f\u0131k fiyatland\u0131rma kurallar\u0131 i\u00e7erecek \u015fekilde geni\u015fletebilirsiniz. \u00d6rne\u011fin, m\u00fc\u015fteri belli bir hizmet paketi se\u00e7ti\u011finde otomatik indirimler uygulamak veya proje s\u00fcresine g\u00f6re fiyatland\u0131rmay\u0131 ayarlamak. Apps Script, Sheets'teki bu karma\u015f\u0131k mant\u0131\u011f\u0131 okuyup yorumlayarak teklife yans\u0131tabilir.<\/p>\n<\/li>\n<li>\n      <strong>Birden Fazla Teklif \u015eablonu Y\u00f6netimi:<\/strong><\/p>\n<p>Farkl\u0131 hizmetleriniz veya m\u00fc\u015fteri segmentleriniz i\u00e7in birden fazla teklif \u015fablonunuz olabilir. Formunuza \"Teklif Tipi\" gibi bir soru ekleyerek m\u00fc\u015fterinin veya sat\u0131\u015f temsilcisinin hangi \u015fablonun kullan\u0131laca\u011f\u0131n\u0131 se\u00e7mesini sa\u011flayabilirsiniz. Apps Script, formdaki bu se\u00e7ime g\u00f6re do\u011fru <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">TEMPLATE_ID<\/code>'yi dinamik olarak belirleyebilir.<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\n  \/\/ \u00d6rnek: Formdan gelen teklif tipine g\u00f6re \u015fablon se\u00e7imi\n  var teklifTipi = response[\"Teklif Tipi\"] ? response[\"Teklif Tipi\"][0] : \"Standart\";\n  var TEMPLATE_ID;\n\n  if (teklifTipi === \"Premium Paket\") {\n    TEMPLATE_ID = \"premium_sablon_id\";\n  } else if (teklifTipi === \"Geli\u015fmi\u015f Hizmetler\") {\n    TEMPLATE_ID = \"gelismis_sablon_id\";\n  } else {\n    TEMPLATE_ID = \"standart_sablon_id\";\n  }\n      <\/pre>\n<p><\/code>\n    <\/li>\n<li>\n      <strong>Hata Y\u00f6netimi ve Bildirimler:<\/strong><\/p>\n<p>Otomasyon sistemlerinde hata olu\u015fmas\u0131 olas\u0131d\u0131r (\u00f6rn. eksik veri, Drive'a eri\u015fim sorunu). Script'inize hata yakalama bloklar\u0131 (<code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">try...catch<\/code>) ekleyerek, bir hata meydana geldi\u011finde kendinize e-posta ile bildirim g\u00f6nderebilirsiniz. Bu sayede, m\u00fc\u015fterileriniz etkilenmeden sorunlar\u0131 h\u0131zla giderebilirsiniz.<\/p>\n<pre><code style=\"background-color: #f0f0f0; padding: 10px; border-radius: 5px; display: block; overflow-x: auto;\">\n  try {\n    \/\/ T\u00fcm teklif olu\u015fturma ve g\u00f6nderme kodunuz buraya\n  } catch (error) {\n    Logger.log(\"Hata olu\u015ftu: \" + error.toString());\n    MailApp.sendEmail(\"admin@sirketiniz.com\", \"Apps Script Teklif Hatas\u0131\", \"Bir hata meydana geldi: \" + error.toString());\n  }\n      <\/pre>\n<p><\/code>\n    <\/li>\n<li>\n      <strong>Webhook ve Harici API Entegrasyonlar\u0131:<\/strong><\/p>\n<p>Apps Script, <code style=\"background-color: #f0f0f0; padding: 2px 4px; border-radius: 3px;\">UrlFetchApp<\/code> hizmeti sayesinde harici API'lere ba\u011flanabilir. Bu, CRM sisteminizle (\u00f6rne\u011fin Salesforce, HubSpot) ger\u00e7ek zamanl\u0131 entegrasyonlar kurman\u0131za veya \u00f6deme a\u011f ge\u00e7itleriyle ileti\u015fim kurman\u0131za olanak tan\u0131r. \u00d6rne\u011fin, yeni teklif olu\u015fturuldu\u011funda CRM'inizde otomatik bir \"f\u0131rsat\" olu\u015fturabilirsiniz.<\/p>\n<\/li>\n<li>\n      <strong>G\u00f6rsel Geri Bildirim ve Durum Takibi:<\/strong><\/p>\n<p>Sheets'te tekliflerin durumunu g\u00f6steren bir sayfa olu\u015fturabilir ve bu sayfaya ko\u015fullu bi\u00e7imlendirme uygulayarak \"G\u00f6nderildi\", \"Onayland\u0131\", \"Reddedildi\" gibi durumlar\u0131 farkl\u0131 renklerle vurgulayabilirsiniz. Bu, bir bak\u0131\u015fta genel sat\u0131\u015f performans\u0131n\u0131z\u0131 g\u00f6rmenizi sa\u011flar.<\/p>\n<\/li>\n<\/ol>\n<p><div class=\"tip-box\">\n      Uzman \u0130pucu: Apps Script ile olu\u015fturulan HTML e-posta g\u00f6vdeleri de mobil uyumlu hale getirilebilir. Inline CSS kullanarak veya responsive tasar\u0131m prensiplerini dikkate alarak, e-postalar\u0131n\u0131z\u0131n telefonlarda da d\u00fczg\u00fcn g\u00f6r\u00fcnmesini sa\u011flayabilirsiniz. \u00d6rne\u011fin, geni\u015flikleri %100 olarak ayarlamak veya metin boyutlar\u0131n\u0131 cihaz ekran\u0131na g\u00f6re optimize etmek gibi basit ad\u0131mlar b\u00fcy\u00fck fark yarat\u0131r. Her ne kadar do\u011frudan CSS kodu veremeyecek olsam da, bu prensipleri Apps Script'in e-posta HTML i\u00e7eri\u011finde uygulayabilece\u011finizi unutmay\u0131n.\n    <\/div>\n<\/p>\n<p>Bu ileri d\u00fczey ipu\u00e7lar\u0131, temel otomasyon sisteminizi daha g\u00fc\u00e7l\u00fc, esnek ve i\u015fletmenizin \u00f6zel ihtiya\u00e7lar\u0131na g\u00f6re uyarlanabilir hale getirmenize yard\u0131mc\u0131 olacakt\u0131r. Her bir entegrasyon veya geli\u015ftirme, manuel i\u015f y\u00fck\u00fcn\u00fcz\u00fc azalt\u0131rken, i\u015f s\u00fcre\u00e7lerinizin verimlili\u011fini ve profesyonelli\u011fini art\u0131racakt\u0131r.<\/p>\n<h2>Sonu\u00e7: Verimlilik ve Profesyonellik \u0130\u00e7in Otomasyonun \u00d6nemi<\/h2>\n<p>M\u00fc\u015fteri tekliflerinin otomasyonu, \u00e7a\u011f\u0131m\u0131z i\u015f d\u00fcnyas\u0131nda sadece bir l\u00fcks de\u011fil, ayn\u0131 zamanda rekabet\u00e7i kalmak ve b\u00fcy\u00fcmek i\u00e7in stratejik bir zorunluluktur. Google Forms, Sheets ve Apps Script gibi eri\u015filebilir ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 kullanarak, i\u015fletmeler manuel i\u015f y\u00fck\u00fcn\u00fc \u00f6nemli \u00f6l\u00e7\u00fcde azaltabilir, hata oranlar\u0131n\u0131 minimize edebilir ve m\u00fc\u015fterilerine daha h\u0131zl\u0131, daha tutarl\u0131 ve daha profesyonel teklifler sunabilirler. Bu rehberde ad\u0131m ad\u0131m g\u00f6sterildi\u011fi gibi, karma\u015f\u0131k g\u00f6r\u00fcnen bir s\u00fcreci bile par\u00e7alara ay\u0131rarak ve do\u011fru ara\u00e7lar\u0131 kullanarak kolayca otomatikle\u015ftirmek m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<p>Otomasyonun faydalar\u0131 sadece zaman tasarrufu ve maliyet d\u00fc\u015f\u00fcrmekle s\u0131n\u0131rl\u0131 de\u011fildir. Ayn\u0131 zamanda, ekibinizin daha stratejik g\u00f6revlere odaklanmas\u0131na olanak tan\u0131r, m\u00fc\u015fteri deneyimini iyile\u015ftirir ve de\u011ferli sat\u0131\u015f verileri sa\u011flayarak daha bilin\u00e7li i\u015f kararlar\u0131 alman\u0131za yard\u0131mc\u0131 olur. \u0130\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 optimize ederek elde etti\u011finiz bu verimlilik, \u015firketinizin \u00f6l\u00e7eklenebilirli\u011fini art\u0131r\u0131r ve gelecekteki b\u00fcy\u00fcmeye zemin haz\u0131rlar. Unutmay\u0131n, dijital ara\u00e7lar do\u011fru kullan\u0131ld\u0131\u011f\u0131nda sadece i\u015fleri kolayla\u015ft\u0131rmakla kalmaz, ayn\u0131 zamanda i\u015f yap\u0131\u015f \u015fekillerimizi de k\u00f6kten d\u00f6n\u00fc\u015ft\u00fcr\u00fcr.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ol>\n<li>\n      <strong>Apps Script'i kullanmak i\u00e7in kodlama bilgisine ihtiyac\u0131m var m\u0131?<\/strong><\/p>\n<p>Evet, temel JavaScript bilgisi Apps Script ile otomasyon kurmak i\u00e7in faydal\u0131d\u0131r. Ancak, bu rehberdeki gibi ad\u0131m ad\u0131m \u00f6rnekleri takip ederek ve k\u00fc\u00e7\u00fck de\u011fi\u015fiklikler yaparak bile \u00f6nemli otomasyonlar olu\u015fturabilirsiniz. Google'\u0131n geni\u015f dok\u00fcmantasyonu ve topluluk deste\u011fi de \u00f6\u011frenme s\u00fcrecinde size yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<\/li>\n<li>\n      <strong>Bu sistem ne kadar g\u00fcvenlidir? M\u00fc\u015fteri verileri nas\u0131l korunuyor?<\/strong><\/p>\n<p>Google Forms ve Sheets, Google'\u0131n sa\u011flam g\u00fcvenlik altyap\u0131s\u0131 \u00fczerinde \u00e7al\u0131\u015f\u0131r. Apps Script, yaln\u0131zca sizin taraf\u0131n\u0131zdan verilen izinler dahilinde \u00e7al\u0131\u015f\u0131r. Hassas verilerle \u00e7al\u0131\u015f\u0131rken, eri\u015fim izinlerini dikkatlice y\u00f6netmek ve script'inizi m\u00fcmk\u00fcn oldu\u011funca k\u0131s\u0131tl\u0131 yetkilerle \u00e7al\u0131\u015ft\u0131rmak \u00f6nemlidir. T\u00fcm veriler Google'\u0131n bulutunda \u015fifrelenmi\u015f olarak saklan\u0131r.<\/p>\n<\/li>\n<li>\n      <strong>Sistemi kurmak ne kadar s\u00fcrer?<\/strong><\/p>\n<p>Bu, ihtiya\u00e7lar\u0131n\u0131z\u0131n karma\u015f\u0131kl\u0131\u011f\u0131na ve kodlama deneyiminize ba\u011fl\u0131d\u0131r. Basit bir teklif otomasyonu i\u00e7in Forms, Sheets ve Docs \u015fablonlar\u0131n\u0131 haz\u0131rlay\u0131p temel Apps Script'i kurmak birka\u00e7 saat s\u00fcrebilir. Daha geli\u015fmi\u015f entegrasyonlar ve \u00f6zellikler eklemek elbette daha fazla zaman alacakt\u0131r.<\/p>\n<\/li>\n<li>\n      <strong>Apps Script \u00fccretsiz mi? Belirli bir s\u0131n\u0131r\u0131 var m\u0131?<\/strong><\/p>\n<p>Evet, Apps Script \u00e7o\u011fu kullan\u0131c\u0131 i\u00e7in \u00fccretsizdir. Ancak, Google servislerini kullan\u0131rken g\u00fcnl\u00fck belirli kotalar (\u00f6rne\u011fin, g\u00f6nderilebilecek e-posta say\u0131s\u0131, yap\u0131labilecek Drive \u00e7a\u011fr\u0131s\u0131 say\u0131s\u0131) bulunur. \u00c7o\u011fu k\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli i\u015fletme i\u00e7in bu kotalar yeterlidir. Kurumsal d\u00fczeyde yo\u011fun kullan\u0131mlarda daha \u00fcst kotalara sahip Workspace lisanslar\u0131 gerekebilir.<\/p>\n<\/li>\n<li>\n      <strong>Olu\u015fturulan teklifleri nas\u0131l takip edebilirim?<\/strong><\/p>\n<p>Google Sheets'teki form yan\u0131tlar\u0131 sayfan\u0131z\u0131 bir takip tablosu olarak kullanabilirsiniz. Her teklif olu\u015fturuldu\u011funda, ilgili sat\u0131ra teklifin Drive URL'sini, g\u00f6nderim tarihini ve durumunu (\u00f6rn. \"G\u00f6nderildi\") kaydeden Apps Script kodlar\u0131 ekleyebilirsiniz. Daha sonra bu tabloda tekliflerin durumunu manuel olarak g\u00fcncelleyerek (\u00f6rn. \"Kabul Edildi\", \"Reddedildi\") sat\u0131\u015f s\u00fcrecinizi y\u00f6netebilirsiniz.<\/p>\n<\/li>\n<\/ol>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-30985","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber<\/title>\n<meta name=\"description\" content=\"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google&#039;\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber\" \/>\n<meta property=\"og:description\" content=\"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google&#039;\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-04T06:31:45+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"28 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber\",\"datePublished\":\"2025-10-04T06:31:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\"},\"wordCount\":4642,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\",\"name\":\"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-04T06:31:45+00:00\",\"description\":\"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google'\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber","description":"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google'\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber","og_description":"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google'\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.","og_url":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-04T06:31:45+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"28 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber","datePublished":"2025-10-04T06:31:45+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/"},"wordCount":4642,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/","name":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-04T06:31:45+00:00","description":"Her i\u015fletmenin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 ortak bir zorluk olan manuel teklif haz\u0131rlama s\u00fcreci, i\u015fletmeler i\u00e7in ciddi bir zaman kayb\u0131, hata riski ve operasyonel verimsizlik anlam\u0131na gelebilir. M\u00fc\u015fterilere \u00f6zel teklifler olu\u015fturmak, rekabet\u00e7i i\u015f d\u00fcnyas\u0131nda hayati \u00f6neme sahipken, bu s\u00fcreci verimli y\u00f6netmek \u00e7o\u011fu zaman g\u00f6z ard\u0131 edilir. Peki, bu s\u00fcreci Google'\u0131n \u00fccretsiz ve g\u00fc\u00e7l\u00fc ara\u00e7lar\u0131 olan Forms, Sheets ve Apps Script ile nas\u0131l otomatikle\u015ftirerek hem zamandan tasarruf edebilir hem de profesyonel bir imaj \u00e7izebilirsiniz? \u0130\u015fte tam da bu noktada, i\u015f ak\u0131\u015flar\u0131n\u0131z\u0131 k\u00f6kten de\u011fi\u015ftirecek, hatas\u0131z ve h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm sunan m\u00fc\u015fteri teklif otomasyonu devreye giriyor. Bu rehber, size ad\u0131m ad\u0131m kendi otomatik teklif sisteminizi kurman\u0131n yollar\u0131n\u0131 g\u00f6sterecek ve i\u015finizi bir \u00fcst seviyeye ta\u015f\u0131man\u0131za yard\u0131mc\u0131 olacakt\u0131r.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/google-araclariyla-musteri-teklif-otomasyonu-adim-adim-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Google Ara\u00e7lar\u0131yla M\u00fc\u015fteri Teklif Otomasyonu: Ad\u0131m Ad\u0131m Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=30985"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30985\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=30985"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=30985"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=30985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}