Google Spreadsheet Query Function: Use real SQL on your spreadsheets


Just like this:

=query(Yevmiye!$A$2:$I$1004;“select sum(H) WHERE D=’”&A11&“’ label sum(H) ”“)

D is a column head. Ignore label statement. Sum(H) is the column which will be subject of query.

The formula gives sometimes #N/A due to result of SQL query is null. To be able to overcome it just wrap your function with iferror(param1,param2) function. if the first param1 gives error, function will threat param2 (in this case 0)

=iferror(query(Yevmiye!$A$2:$I$1004;"select sum(H) WHERE D=’”&A11&“’ label sum(H) ”“) ,0)

Enjoy

Reklamlar

Google Spreadsheet Query Function Makes your Spreadsheets DB which SQL-ready


When you want to make complex queries over Excel sheet that is almost impossible. Yet by Google Docs Spreadsheet Query() function you  can write SQL and retrieve whatever you want.

For instance:

=query(A2:I1000;“select sum(H)  WHERE D=‘mrkt’”) 

Gets only expenditures which about ‘mrkt’ (market) from A2:ı10000 TABLE then gets sum.

When you write function by this way, the function returns extra header. You can remove it:

=query(A2:I1000;“select sum(H) WHERE D=’mrkt’ label sum(H) ”“)

Enjoy.

Excel VBA ile web sunucusuna HTTP protokolü üzerinden data yollamak (post etmek)


Çok spesifik durumlar dahilinde Excel dosyanız içindeki bir veriyi makro yordamı ile web sunucusuna yollamak isterseniz aşağıdaki makro işinizi görecektir. Makro çalıştırıldığında data sunucuya yollanmakta ve cevap ekrana mesaj olarak yansıtılmaktadır.

https://gist.github.com/e377de41ce7f6ea94ba3.js

Google App Script ile e-tablo (spreadsheet) ile entegre zengin form oluşturma


Google App ile excel tablolarının Google dökümanlardaki muadili olan Google e-tablolara entegre formlar yazabiliriz:
Aşağıdaki gibi:

Bunu oluşturabilmek için Araçlar> Komut dosyası yöneticisini kullanıyoruz.
Aşağıdaki gibi kodlarımızı yazıyoruz:
Kodlarımızı yazdıktan sonra üçgene basarak form_goster fonksiyonumuzu çalıştırınca ilk resimdek form çıkıyor. Bu forma girilen veri form_isle fonksiyonu ile A1 hücresine yazdırılacak.
Açıklamalı kodlarımız aşağıda:

function form_goster() {
  //Uygulama oluştur
  var app=UiApp.createApplication();
  app.setTitle(“Suat Google Apps Form”);
  //panel oluştur
  var panel=app.createVerticalPanel();
  //texbox oluştur
  var tf=app.createTextBox();
  //Ekle butonu oluştur
  var bt=app.createButton(“Ekle”);
  //oluşturulan texbota isim ata
  tf.setName(“ad”).setId(“ad”);
  
  //bu elemanları panele yerlestir
  panel.add(tf);
  panel.add(bt);
  
  //form submit edilince yapilacak islem
  var formtetik=app.createServerHandler(“form_isle”);
  //tetigi butona atadik
  bt.addClickHandler(formtetik);
  //is bitince panele don.
  formtetik.addCallbackElement(panel);
  
  //paneli de uygulamaya yerlerstir
  app.add(panel);
  
  //uygulamayi goster
  var doc=SpreadsheetApp.getActive();
  doc.show(app);
  
}
function form_isle(e){
  //calisan uygulamay ele al
  var app=UiApp.getActiveApplication();
  //formdan gelen veriyi cek
  var formdan_gelen_ad=e.parameter.ad;
  //bu veriyi ne yapalim. alip A1’e yazdiralim
  var sheet=SpreadsheetApp.getActiveSpreadsheet();
  sheet.getRange(“A1”).setValue(formdan_gelen_ad);

}

İlk Google App Script Uygulamam


Google Drive (Docs) kullanıyorsanız excel makroları muadili olarak kullanılan ve saf Javascriptle yazılan “Google App Script” kodlamayla üstün ve karmaşık işlemler yapabilirsiniz. Buna mail gönderimi, google data servislerine erişim de dahildir. Bu yönüyle excel makrolarından daha fazla şey vadediyor. Ve daha kolay…
Script A1 hücresindeki değeri alıp kdv’sini hesaplayıp B1’e yazıyor.

İşte ilk scriptim:

function kdv_hesapla(deger) {
  var kdv=deger*0.18;
  return kdv;
}
function run(){
  var ss=SpreadsheetApp.getActiveSpreadsheet();
  var sheet=ss.getSheets()[0];
      
  var kaynak=sheet.getRange(“A1”);
  var hedef=sheet.getRange(“B1”);
  var deger=kdv_hesapla(kaynak.getValue());
  hedef.setValue(deger)
      
}