Bu Blogda Ara

30 Ağustos 2021 Pazartesi

Google Tablolarda Temel Tetikleyiciler

Bu yazı bir Youtube alıntısıdır.

1) Tetikleyicilerde ilk örnek: E-posta gönderimi kurmak
https://youtu.be/5BYhGGPQlyA?t=44s

2) Her belirlenen dakikada komut tetiği kurmak
https://youtu.be/5BYhGGPQlyA?t=5m40s

3) Tetiğe saat eklemek
https://youtu.be/5BYhGGPQlyA?t=6m

4) Özel tarih ve saati ayarlamak
https://youtu.be/5BYhGGPQlyA?t=9m50s

Kodu hemen çalıştırmayı denemeyin, ilk kısımdaki ölçütler örnek amaçlı gösterilmiştir. Bunlardan biri kullanılarak çalıştırınız. Bu bölümde görülen kod örneği:
function setUpTrigger() {
  ScriptApp.newTrigger('sendEmail')
  .timeBased()
  .onWeekDay(ScriptApp.WeekDay.MONDAY)
  .atHour(5)
  .nearMinute(0)
  .inTimezone('America/Los_Angeles')
  .at(new Date(20218302102))
  //.at(new Date(yıl, ay, gün, saat, dakika))
  .create()
}

function sendEmail() {
  GmailApp.sendEmail("tutorial@gmail.com","İleti metni");
}

5) Sabit ve değişken tetikleyiciler
https://youtu.be/Vob6Qy01-_Y?t=2m26s

6) onOpen(e) ile tetikleme
https://youtu.be/hpAyqfgdgWA?t=1m17s

Kullandığınız tarayıcının açılır pencere ayarları önemli olabilir. Bu bölümde görülen kod, çalıştırılamadı:
function setUpTrigger() {
  ScriptApp.newTrigger('uyari')
  .forSpreadsheet('1_aO3RPdPNY2L08RDp0lYLp5upiN2jgvzkG-gKVu6onk')
  .onOpen()
  .create();
}

function uyari(e) {
  SpreadsheetApp.getUi.alert('Deneme')
}

7) onEdit(e) ile tetikleme
https://youtu.be/EsrgsYUMmX4?t=3m38s
https://youtu.be/EsrgsYUMmX4?t=6m7s
function setUpTrigger() {
  ScriptApp.newTrigger('onEdit')
  .forSpreadsheet('1_aO3RPdPNY2L08RDp0lYLp5upiN2jgvzkG-gKVu6onk')
  .onEdit()
  .create();
}

function onEdit(e) {
  SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test')
.getRange(e.range.getRow(), 7).setValue(new Date())
}


8) onChange(e) ile tetikleme
https://youtu.be/T5CXhJrYguk?t=3m50s

26 Ağustos 2021 Perşembe

Google Tablolarda Script İle Satır Silmek

Merhabalar.

Google tablolarda satır silmek için iki kriterli kod oluşturdum. Kullanılacak Excel sayfasının adı, "test" olan kısımlarla değiştirilmelidir. Aşağıdaki kodlar, "Araçlar > Komut dosyası düzenleyicisi"ni tıklayınca açılan komut arayüzüne yapıştırıp kaydettikten sonra çalışır.

1) Numarası verilen sütun temel alınarak satır silinir.

function Sutunda_Bosluk_Varsa_Satir_Sil(){
  var toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
  var silinecek_sutun_sira_no = 4;
  for (var i = 1i < toplam_satir_sayisii++) {
    toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
    if (SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getRange(isilinecek_sutun_sira_no).getValue() == '') {
      SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').deleteRow(i);
      i--;
    }
  }
}

2) Satırın herhangi bir hücresi boş ise, o satır komple silinir.

function Herhangi_Bir_Hucre_Bossa_Satir_Sil(){
  var toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
  var toplam_sutun_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getLastColumn() + 1;
  for (var i = 1i < toplam_satir_sayisii++) {
    toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
    for (var j = 1j < toplam_sutun_sayisij++) {
      if (SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getRange(ij).getValue() == '') {
        SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').deleteRow(i);
        i--;
      }
    }
  }
}


3) Satırın bir tane bile dolu hücresi varsa, o satırda işlem yapılmadan alt satıra geçilir. Fakat bir satırda tüm hücreler boş ise, o satır silinir.

function Tum_Satir_Bossa_Satir_Sil(){
  var toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
  var toplam_sutun_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getLastColumn();
  var bos_hucre_sayisi = 0;
  for (var i = 2i < toplam_satir_sayisii++) {
    toplam_satir_sayisi = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getMaxRows();
    for (var j = 1j < toplam_sutun_sayisi + 1j++) {
      if (SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').getRange(ij).getValue() == '') {
        bos_hucre_sayisi++;
        if (j == toplam_sutun_sayisi) {
          if (bos_hucre_sayisi == toplam_sutun_sayisi) {
            SpreadsheetApp.getActiveSpreadsheet().getSheetByName('test').deleteRow(i);
            i--;
          }
        }
      }
      if (j >= 4) {
        bos_hucre_sayisi = 0;
      }
    }
  }
}

Faydalı olması dileğiyle.

10 Ağustos 2021 Salı

Develop Ineo +458 Yazıcı ve Tarayıcıya Windows'ta SMB Bağlantısı Kurmak

Merhabalar.

Develop Ineo +458 yazıcı ve tarayıcıya Windows 10 üzerinden erişmek için SMB türünde bağlantı için aşağıdaki adımları uygulayınız.

Windows+R tuşlarıyla Çalıştır penceresini açıp control appwiz.cpl,,2 değerini yazıp Tamam'a basınız.
Windows Özellikleri'nde SMB Dosya Paylaşımı Desteği aktif edip Tamam'a basınız.


Bilgisayarın yeniden başlatılması gerektiği uyarısı gelecektir, bilgisayarı yeniden başlatınız.
Ardından, bir klasörü tarayıcı için paylaşınız. Paylaşılacak klasörün özelliklerini açınız.
Paylaşım penceresini açtıktan sonra listeden kullanıcı seçiniz. Bilgisayarınızın kullanıcı adını öğrenmek için, Windows+R ile Çalıştır'a cmd yazıp Enter'a basınız. Ekrandaki ifade kullanıcı adıdır.
Yazıcı ve tarayıcınızın ağınızda tanımlı IP adresini alınız; yani, http://***.*.**.**/wcd/abbr.xml şeklinde adresi oluşturup web tarayıcınızın adres çubuğuna yapıştırınız, Enter'a basınız.
Görseldeki bilgileri ilgili alanlara doldurduktan sonra tarayıcıyı kullanabilirsiniz.

1 Ağustos 2021 Pazar

URL ile YouTube Belirlenmiş Süreye Gitmek

Merhabalar.

Çok uzun YouTube videolarında URL değerleriyle belirlenmiş bir sahneye, süreye gitmek için aşağıdaki adımlar işinize yarayabilir.

Video izlerken "spacebar / boşluk" tuşuna basarak veya videoyu duraklatarak video üzerine sağ tıklayıp "Geçerli zamana ait video URL'sini kopyala" ile bağlantıyı alıp kullanabilirsiniz.



Yorumlarda ise 0:00:55 gibi değerler otomatik olarak o video için bir dilimleme işlevi görür. Bir YouTube videosunda yorumunda, başka bir YouTube videosundan zaman ayarlı bir URL vermek isterseniz. https://youtu.be/2D1l3sMc56c&t=55s şeklinde bağlantı yapıştırmalısınız.

Saatlerce süren bir bağlantıda ise aşağıdaki parametreleri kullanabilirsiniz.


Temel URL'den hemen sonra & and / ve parametresini; times kelimesinin kısaltması olan t harfini; değer eşitleyebilmek için = eşittir operatörünü; video 1 saat ise veya 1 saatten daha uzunsa 1h yani 1 hour, 2 hours anlamına gelen değeri; video 1 ise veya 1 dakikadan daha uzunsa 1m yani 1 minute, 2 minutes anlamına gelen değeri; video 1 saniye ise veya 1 saniyeden daha uzunsa 1s yani 1 second, 2 seconds anlamına gelen değeri ekliyoruz. Zaten çok kısa süreli videolar için bu gereksiz bir çaba olur. Bahsettiğimiz konunun kapsamı, saatlerce süren canlı video kayıtları ve içeriklerdir.

Video 1 saat veya üzerinde ise:
&t=1h01m23s
Video sadece dakika bazında ise:
&t=55m12s
örneklerindeki gibi değerler kullanabilirsiniz.

Faydalı olması dileğiyle.