2017-08-01 7 views
0

最初は貧しい私の英語のために申し訳ありませんが、私はすべてを説明するために最善を尽くします。 列Dの値が何回変更されたかを数え、列Eに表示する方法はありますか? 列Dのこの例では、personはlist - "☐"と "☑"の2つの値を選択できます。列Eでは、人が自分の選択を何回変えたかを知りたい。 E3の場合、D3が何回変更されたか、E4がD4が何回変更されたかなどを確認したいとします。 ありがとうございました!列内で値が何回変化したかを数えて表示する

example

Example spreadsheet

私が見つけた唯一のものは、そのようsomehitngた:

function onEdit(e) { 
    if(e.range.getA1Notation() == "D2") { 
    var sCounter = e.source.getRange("E2"); 
    var counter = sCounter.getValue(); 

    if(counter === 0) { 
     counter = 1; 
    } else { 
     counter ++; 
    } 
    sCounter.setValue(counter); 
    } 
} 

問題はそれだけで一つのセルをカウントし、私はそれが全体の列のために働く必要があるということです。

+0

こんにちは、スタックオーバーフローを歓迎します。あなたのコードのサンプルを提供してください;-) –

+0

私はこのウェブサイトをうまく使用する方法を知らないので、私は答えとしてコードを書いています。 –

答えて

0

これはそれを行う必要があります。

function onEdit(e) { 
    var ss =SpreadsheetApp.getActiveSpreadsheet() 
    var s=ss.getActiveSheet() 
    var editColumn=e.range.getColumn() 
    var editRow = e.range.getRow() 
    if(editColumn == 4 && editRow >=2) { 
     var sCounter = s.getRange(editRow,editColumn+1,1,1); 
     var counter = sCounter.getValue(); 
    if(counter === 0) { 
     counter = 1; 
    } else { 
     counter ++; 
    } 
    sCounter.setValue(counter); 
    }} 

は、ここでは、コピーして試すことができます私のテストのスプレッドシートである:

https://docs.google.com/spreadsheets/d/1I5_NVMKPvqN9J2sSlcLRnQbzoVF4iRKOuXJ5mshb-RY/edit?usp=sharing

+0

すごくうまくいった!どうもありがとうございます! –

関連する問題