Ich habe Daten, die wie folgt aussieht:Validieren von Benutzereingaben in GSheets/Javascript
Task | Number
A | 1
B | 2
C | 2
D | 3
E | 3
F | 3
Es gibt zwei Spalten. Einer mit Aufgaben und der andere mit Werten. Mein Ziel ist es auf Google Sheets, wenn der Benutzer in einer Aufgabe und einer Reihe tritt, dass der Code gegen alle anderen Zahlen überprüfen wird
So zum Beispiel, wenn ich die oben genannten Daten haben, und der Benutzer wieder
trittF | 3
, dass der Code dieses Benutzereingabe ablehnen ist
Sie den Code unten. Ich habe es ausgeführt, und in den Alarmfeldern, die Gleichung
einheitlich validiert auf false. Der folgende Code deklariert also 3 == 3 ist eigentlich eine falsche Aussage. Die Frage ist warum? Und wie kann ich dieses Problem beheben?
function checkEntry(){
//store the range as that cell
var rng = ss.getRange(8, 2)
//ui.alert(rng.getValue());
var dict = {}
var i = 2
var k = 1
//check the sheet
for(i=2;i<=last;i++){
ui.alert(ss.getRange(i, 2).getValue());
ui.alert(ss.getRange(rng.getRow(), rng.getColumn()).getValue());
ui.alert(ss.getRange(i, 2).getValue() == ss.getRange(rng.getRow(), rng.getColumn()).getValue());
}
Der Code läuft überhaupt nicht, weil "last" nicht definiert ist. Siehe [MCVE]. Außerdem steht (8, 2) in der achten Zeile, die Ihre Beispieldaten nicht haben. Schließlich, wenn Ihr Code eine Menge von getRange(). GetValue() in einer Schleife hat, verwenden Sie Apps Script falsch. Es sollte einen Aufruf zu "getRange" vor der Schleife geben; Der Bereich umfasst alle Daten, auf die Sie in dieser Funktion zugreifen möchten. – FTP