2012-02-13 13 views
11

Google Spreadsheets ile kendim için bir araç hazırlıyorum ve bu aracın bir parçası olarak, belirli bir hücre kümesini temizleyen bir düğmeyi kullanmak istiyorum. Anladığım kadarıyla bir çizim eklemem ve sonra o desene bir komut dosyası atamam gerekiyor. Sorun şu ki, kendi yazmamla ilgili ilk şeyi bilmiyorum, burada yardım arıyorum!Bir google elektronik tablodaki hücreleri temizlemek için bir düğmeye ihtiyacım var

Bunun amacı, b7-G7 hücrelerinden veriyi (etkinleştirildiklerinde boş bıraktıkları, ancak rengi bırakacak şekilde) bir komut dosyası eklenmiş bir çizimin benim için olması olacaktır.

Size önerebileceğiniz herhangi bir yardım harika olurdu!

cevap

23

Böyle bir betik çok basittir, nasıl yapılacağını öğrenmek için tutorials'a bakmalısınız.

Neyse, işte burada:

function clearRange() { 
    //replace 'Sheet1' with your actual sheet name 
    var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1'); 
    sheet.getRange('B7:G7').clearContent(); 
} 
+0

teşekkür aşağıdaki kodu bakın, ama sadece dürüstçe programlama alamadım. Düzenleyicide komut dosyasını kurdum ve gayet iyi çalışıyor. AMA, çizdiğim düğmelerden birine atamak mümkün görünmüyor. Düğmeyi tıklatıp "Komut Dosyası atama" yı seçip, ardından komut dosyasının adını yazılan kutuya yazdım. Tamamladığımda ve sonra komut dosyası atanmış düğmeyi tıklattığımda, "Komut dosyası işlevi CAC bulunamadı" yazan bir hata alıyorum. CAC komut dosyasının adıdır. – user1207825

+0

İşlev adını, komut dosyasının adını yazmalısınız. Benim örneğimde clearRange –

+0

* facepalm * Çok teşekkür ederim çocuklar. Burada tamamen noob var. Bir soru daha, ve sonra tüm dünya ile doğru. Farklı aralıkları temizlemek için farklı düğmeler ayarlamaya nasıl giderim? Örneğin, B7-G13'ü temizlemek için B7-G7'yi temizlemek için düğmeme sahibim, ama şimdi B13-G13'ü temizlemek için bir tane daha lazım. İkinci bir betik yaptım, ancak "clearRange" isimli bir işlev var. – user1207825

5

, tıklandığında o, tüm işlevlerini listeler Google tablonuza özel menü eklemek için. Kendimi öğretmeye çalışıyordu ^.^Cevap için

function onOpen() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var menubuttons = [ {name: "Clear B7-G7", functionName: "clearRange1"}, 
        {name: "Clear B13-G13", functionName: "clearRange2"}]; 
    ss.addMenu("Custom", menubuttons); 
} // note you also have to have functions called clearRange1 and clearRange2 as list below 
function clearRange1() { //replace 'Sheet1' with your actual sheet name 
    var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1'); 
    sheet.getRange('B7:G7').clearContent(); 
} 
function clearRange2() { //replace 'Sheet1' with your actual sheet name 
    var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1'); 
    sheet.getRange('B13:G13').clearContent(); 
} 
+0

Özel menüler! Teşekkür ederim! –

İlgili konular