2010-12-13 38 views
1

Googleドキュメントスプレッドシート用の簡単なスクリプトを作成しようとしています。下の2つのリンクは、私がスクリプトを書いているシートのスクリーンショットです。GoogleスプレッドシートのJavascript

私はまだJavaScriptを書く方法を学んでいますが、これは私がやろうとしていることです。私はこれが理にかなってほしい。誰もこれで私を助けることができますか?

get.sheetbyname "Purchase Orders" 
    If column E == "stock" 
    var qty == three cells left of cell e 
    var partNum == two cells left of cell e 

get.sheetbyname "Parts inventory" 
    loop through column C until you find partNum 
    var oldQty == number(two cells left of partNum) 
    add qty to oldQty to get new qty 

+0

李江(Yi Jiang)、どのように写真を自動的に表示するようにしましたか? – David

答えて

1

あなたは間違いなくすぐにはJavaScriptに精通取得する必要があります。それは強力な言語であり、拾いやすいように見えますが、他の一般的な、一見関連する言語(Java、Cなど)とは多くの違いがあります。 JavaScriptに慣れたら、Google Apps Script Spreadsheet Services APIsに慣れてください。これらのAPIを使用すると、Microsoft Excelなどの他のスプレッドシートアプリケーションと同様に、Google Docsスプレッドシートをスクリプト化することができます。ワークブックを開いて、[ツール]> [スクリプト]> [スクリプトエディタ...]の順に選択し、新しい名前付きスクリプトを作成します。

ここでは、具体的に何をしようとしているかについて説明します。一部の品目に対して購買発注がいくつあるかを調べ、在庫シートの数量を更新しようとしているようです。

function updateInventoryFromPurchaseOrders() { 
    var purchaseOrders = {}; // A mapping of partNumber => quantity. 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName('Purchase Orders'); 
    if (sheet) { 
    // For each row, if column "E" == "stock" then set partNumber, quantity. 
    purchaseOrders[partNumber] = quantity; 
    } 
    // Now purchaseOrders should look like {'SL249':5, 'ML50':1, 'MWF':1} 

    sheet = ss.getSheetByName('Inventory'); 
    if (sheet) { 
    // For each row, set quantity, partNumber. 
    var purchased = purchaseOrders[partNumber]; 
    // Set column "A" value = quantity + purchased 
    } 
} 

読書や個々のセルから値を書き込むには、上記のリンクドキュメントはあなたの道の残りの部分を取得するのに十分な例を与える必要があり、Rangesを使用する必要がします。

関連する問題