• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

google script ile whatsapp mesajı göndermek

  • Konbuyu başlatan Konbuyu başlatan pNouma
  • Başlangıç tarihi Başlangıç tarihi
Katılım
29 Ocak 2024
Mesajlar
277
Excel Vers. ve Dili
Office 2016
Kıymetli hocalarım merhaba,
google script ile whatsapp mesajı göndermek için aşağıdaki kodu düzenledim,
ama en sonunda sayfada bir hücreye link yada bir şekile bu kodu "komut dosyası" olarak atama yapmayı beceremedim.

bu konuda yardımcı olursanız çok sevinirim.

destekleriniz için şimdiden teşekkürler,


Kod:
function WhatsAppLinkFormula() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');
  var WhatsAppLinks =[];
  var WhatApp = 'https://web.whatsapp.com/send?phone';
  var phoneNumber = sheet.getRange('A3').getValue();
  phoneNumber = phoneNumber.replace(' ', '')
  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();
  // var message = line1 + line2 + line3 + line4;
  var message = "";
  message += line1 + "\n";
  message += line2 + "\n";
  message += line3 + "\n";
  message += line4 + "\n";

  var WhatsAppLink = WhatApp + '+9' + phoneNumber + '&text=' + encodeURIComponent(message);
  var displayText = 'Send To Message'
  var hyperLinkFormula = '=HYPERLINK("' + WhatsAppLink + '","' + displayText + '")';
  WhatsAppLinks.push([hyperLinkFormula]);
 // sheet.getRange('D3').setFormula(WhatsAppLinks);

}
 
  • Google Sheets'te Insert (Ekle) menüsünden Shape (Şekil) ekleyin.
  • Şekli seçin ve üç noktaya tıklayın (diğer seçenekler).
  • "Assign script" (Komut dosyası ata) seçeneğine tıklayın.
  • Açılan kutuya WhatsAppLinkFormula yazın ve "OK" tuşuna basın.
 
  • Google Sheets'te Insert (Ekle) menüsünden Shape (Şekil) ekleyin.
  • Şekli seçin ve üç noktaya tıklayın (diğer seçenekler).
  • "Assign script" (Komut dosyası ata) seçeneğine tıklayın.
  • Açılan kutuya WhatsAppLinkFormula yazın ve "OK" tuşuna basın.
Hocam bunu yaptım zaten olmadı,
sanırım kodda bir düzenleme gerekiyor.
iyi Çalışmalar.
 
Komut dosyasının şekle atanabilmesi için WhatsAppLinkFormula fonksiyonunun çalıştırılması ve ardından doğru hücreye sonuç yazdırılması gerekiyor. Kodu şu şekilde güncelleyin:

Kod:
function WhatsAppLinkFormula() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');

  var phoneNumber = sheet.getRange('A3').getValue();
  phoneNumber = phoneNumber.replace(' ', '');

  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();

  var message = "";
  message += line1 + "\n";
  message += line2 + "\n";
  message += line3 + "\n";
  message += line4 + "\n";

  var WhatsAppLink = 'https://web.whatsapp.com/send?phone=+9' + phoneNumber + '&text=' + encodeURIComponent(message);
  var displayText = 'Send To Message';

  var hyperLinkFormula = '=HYPERLINK("' + WhatsAppLink + '","' + displayText + '")';

  sheet.getRange('D3').setFormula(hyperLinkFormula);
}

2.şık olarak

Google Sheets'te Insert > Drawing menüsünden bir şekil ekleyin.
Şekli seçin ve sağ tıklayın (veya üç noktaya tıklayın).
Assign script seçeneğini tıklayın.
Açılan kutuya WhatsAppLinkFormula yazın ve OK tuşuna basın.

Artık şekle tıklayarak WhatsAppLinkFormula fonksiyonunu çalıştırabilir ve hücre D3'e WhatsApp linki ve mesajı yerleştirilmiş olacaktır.
Bu şekilde komut dosyasını bir şekle atayarak kullanıcının sadece şekle tıklayarak WhatsApp linkini hızlıca oluşturmasını sağlayabilirsiniz.

Denermisiniz
 
Komut dosyasının şekle atanabilmesi için WhatsAppLinkFormula fonksiyonunun çalıştırılması ve ardından doğru hücreye sonuç yazdırılması gerekiyor. Kodu şu şekilde güncelleyin:

Kod:
function WhatsAppLinkFormula() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');

  var phoneNumber = sheet.getRange('A3').getValue();
  phoneNumber = phoneNumber.replace(' ', '');

  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();

  var message = "";
  message += line1 + "\n";
  message += line2 + "\n";
  message += line3 + "\n";
  message += line4 + "\n";

  var WhatsAppLink = 'https://web.whatsapp.com/send?phone=+9' + phoneNumber + '&text=' + encodeURIComponent(message);
  var displayText = 'Send To Message';

  var hyperLinkFormula = '=HYPERLINK("' + WhatsAppLink + '","' + displayText + '")';

  sheet.getRange('D3').setFormula(hyperLinkFormula);
}

2.şık olarak

Google Sheets'te Insert > Drawing menüsünden bir şekil ekleyin.
Şekli seçin ve sağ tıklayın (veya üç noktaya tıklayın).
Assign script seçeneğini tıklayın.
Açılan kutuya WhatsAppLinkFormula yazın ve OK tuşuna basın.

Artık şekle tıklayarak WhatsAppLinkFormula fonksiyonunu çalıştırabilir ve hücre D3'e WhatsApp linki ve mesajı yerleştirilmiş olacaktır.
Bu şekilde komut dosyasını bir şekle atayarak kullanıcının sadece şekle tıklayarak WhatsApp linkini hızlıca oluşturmasını sağlayabilirsiniz.

Denermisiniz

Hocam öncelikle ilgi ve alakanız için Teşekkürler,
D3 hücresine formülü atarken "WhatsAppLink" ile "displayText" arasına "," atanı bunu ";" virgül ile çözdüm , bu neyse de;
yalnız D3 hücresindeki linke tıklayınca hata veriyor, daha doğrusu webWhatsApp sayfaını açamıyor.
sanırsam kod üzerine bir şeyler eksik yada hatalı!!
iyi Çalışmalar.
 
Merhaba,
Bende bu aralar Google Apps Script GAS a merak sardım.
Çoğu şey insanı deli ediyor ama yine de güzel.

JavaScript:
function WhatsAppMesaj() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');
  var WhatApp = 'https://web.whatsapp.com/send?phone=90' // başta + yok
  var phoneNumber = sheet.getRange('A3').getValue(); // A3= başta 0 yok ( 512 345 67 89 )
  phoneNumber = phoneNumber.replace(' ', '')
  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();
  // var message = line1 + line2 + line3 + line4;
  var message = "";
  message += line1 + "\n"; // 1. satır
  message += line2 + "\n"; // 2. satır...
  message += line3 + "\n";
  message += line4 + "\n";

  var WhatsAppLink = WhatApp + phoneNumber + '&text=' + encodeURIComponent(message);

  var html = `
    <html>
      <head>
        <script>
          function WhatsAppMesage() {
              // otomatik açmayı dene <body onload="WhatsAppMesage();"> yazılı
              // popup engel kaldırılnca otomatikleşecek
              var win = window.open('${WhatsAppLink}', '_blank'); // yeni pencerede aç
              if (win) {
                google.script.host.close(); // Pencereyi kapat
              } else {
                document.getElementById("uyari").style.display = "block"; // Pop-up engellendi uyarısı göster
              }
          }
        </script>

        <style>
          .whatsapp-button {
          padding: 10px 20px;
          font-size: 14px;
          cursor: pointer;
          background: #007BFF;
          color: white;
          border: none;
          border-radius: 5px;
          }

          .whatsapp-button:hover {
          background-color: #0056b3;
          }

          body {
          text-align:center;
          font-family:sans-serif;
          }
        </style>
      </head>
      <body onload="WhatsAppMesage();">
        <p id="uyari" style="font-size:12px; color:red; display:none;">Pop-up engellendi! Lütfen tarayıcıdan izin verin.
        </br>
          <span style="color:blue;">veya Mesaj Gönder tıkla.</span>
        </p>
        </br>
        <button onclick="WhatsAppMesage()" class="whatsapp-button">Mesaj Gönder</button>
      </body>
    </html>`;

  var output = HtmlService.createHtmlOutput(html)
    .setWidth(300)
    .setHeight(150);

  SpreadsheetApp.getUi().showModalDialog(output, "Mesaj gönderiliyor...");
}
 
Son düzenleme:
Kod:
function WhatsAppLinkFormula() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');

  var phoneNumber = sheet.getRange('A3').getValue();
  phoneNumber = phoneNumber.replace(' ', '').replace(/[^\d]/g, ''); 

  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();

  var message = "";
  message += line1 + "\n";
  message += line2 + "\n";
  message += line3 + "\n";
  message += line4 + "\n";
 
  if (phoneNumber.startsWith('0')) {
    phoneNumber = phoneNumber.substring(1);
  }
 
  var WhatsAppLink = 'https://wa.me/' + phoneNumber + '?text=' + encodeURIComponent(message);
  var displayText = 'Mesajı Gönder';

  var hyperLinkFormula = '=HYPERLINK("' + WhatsAppLink + '","' + displayText + '")';

  sheet.getRange('D3').setFormula(hyperLinkFormula);
}

Link şu şekilde oluşturuluyor: https://wa.me/<telefon numarası>?text=<mesaj metni>. Burada <telefon numarası>, +90 gibi uluslararası kodu içeren bir numara olmalıdır. Örneğin, Türkiye için numara +90 ile başlar.

Eğer telefon numaranız 5551234567 ise ve Türkiye'den bir numara ise, WhatsApp linkiniz şu şekilde olur:

Bu linki tıkladığınızda, WhatsApp Web sayfası açılmalı ve mesaj önceden doldurulmuş olmalıdır.
 
Kod:
function WhatsAppLinkFormula() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName('WhatsApp');

  var phoneNumber = sheet.getRange('A3').getValue();
  phoneNumber = phoneNumber.replace(' ', '').replace(/[^\d]/g, '');

  var line1 = sheet.getRange('A1').getValue();
  var line2 = sheet.getRange('B1').getValue();
  var line3 = sheet.getRange('C1').getValue();
  var line4 = sheet.getRange('D1').getValue();

  var message = "";
  message += line1 + "\n";
  message += line2 + "\n";
  message += line3 + "\n";
  message += line4 + "\n";

  if (phoneNumber.startsWith('0')) {
    phoneNumber = phoneNumber.substring(1);
  }

  var WhatsAppLink = 'https://wa.me/' + phoneNumber + '?text=' + encodeURIComponent(message);
  var displayText = 'Mesajı Gönder';

  var hyperLinkFormula = '=HYPERLINK("' + WhatsAppLink + '","' + displayText + '")';

  sheet.getRange('D3').setFormula(hyperLinkFormula);
}

Link şu şekilde oluşturuluyor: https://wa.me/<telefon numarası>?text=<mesaj metni>. Burada <telefon numarası>, +90 gibi uluslararası kodu içeren bir numara olmalıdır. Örneğin, Türkiye için numara +90 ile başlar.

Eğer telefon numaranız 5551234567 ise ve Türkiye'den bir numara ise, WhatsApp linkiniz şu şekilde olur:

Bu linki tıkladığınızda, WhatsApp Web sayfası açılmalı ve mesaj önceden doldurulmuş olmalıdır.
teşekkürler Hocam, konuyu çözdüm;
sheet.getRange('D3').setFormula(hyperLinkFormula);
bu formülü hücreye atayabildiğimiz gibi; sayfaya ekleyeceğimiz bir şekle atamamız mümkün müdür?
şekle tıklayınca link çalışacak...
iyi çalışmalar.
 
@pNouma
E-Tablo sayfasına eklediğin Nesneye (Şekil ) Atadığın Komut dosyası ismi olan WhatsAppLinkFormula
Benim yazdığım fonksiyonun ismi olan WhatsAppMesaj ile değiştirip kodları test edebildin mi ?
 
@pNouma
E-Tablo sayfasına eklediğin Nesneye (Şekil ) Atadığın Komut dosyası ismi olan WhatsAppLinkFormula
Benim yazdığım fonksiyonun ismi olan WhatsAppMesaj ile değiştirip kodları test edebildin mi ?
Harikulade Hocam; çok teşekkür ederim.
Google script konusunda eğitim veriyor musunuz?

Selamlar, saygılar.
 
Harikulade Hocam; çok teşekkür ederim.
Google script konusunda eğitim veriyor musunuz?
Kodları beğenmene sevindim.
önceden JavaScript, Html, Css bilgim var o yüzden Google Script yakın geldi
ama sonuçta Google Scriptte bende yeniyim öğrenmeye çalışıyorum,
daha onOpen() onEdit() onInstall() tetikleyicileri çalıştıramadım ?
 
Kodları beğenmene sevindim.
önceden JavaScript, Html, Css bilgim var o yüzden Google Script yakın geldi
ama sonuçta Google Scriptte bende yeniyim öğrenmeye çalışıyorum,
daha onOpen() onEdit() onInstall() tetikleyicileri çalıştıramadım ?
Çok memnun oldum Hocam
inşallah ileride daha iyi olursunuz !!
 
Örnek kod olması açısından,
Google Sheets - WhatsApp mesaj gönderme WhatsAppHtml

thumbnail
 
Son düzenleme:
Geri
Üst