2017-06-12 2 views
-3

Ich versuche, auf eine bestimmte Zelle in einer Zeile zuzugreifen, die einem Index entspricht. Also für Index 5, gehen Sie zu cel F6 und machen Sie Sachen. Ich bin immer folgende Fehlermeldung:Bereich basierend auf indexOf erhalten

TypeError: isInColumnid is not a function, it is number. (line 23, file "testing4")

Dies ist mein Code:

var isInColumnid = columntosearchid.indexOf(id) 

var valuestoreplace = isInColumnid.getRange('!I:O') 
+3

'java! = Javascript' --- Entfernen Sie' java' tag. – Andreas

+1

'.getRange()' ist eine Methode für das Sheet-Objekt. Wie der Fehler angibt, wenden Sie es auf 'isInColumnId' an, das eine Zahl zwischen -1 und n ist, basierend darauf, dass es durch die' indexOf() 'Methode zugewiesen wird. Schlage vor, dass du einen größeren Abschnitt deines Codes veröffentlichst. – Jonathon

+0

Sie haben Recht. Ich sollte '.getRange' auf das Blatt selbst anwenden und dann angeben, welche Zeile und welche Spalte zu bekommen sind, indem ich die Indexspeicher in 'isInColumnid' verwende. – ebvogt

Antwort

0

Ich glaube, Sie selbst eine gute Menge Ärger auf diese mithilfe der math.range speichern kann (Start, end [, includeEnd]) Syntax.

Sie werden in der Lage sein, Ihre Variablen entsprechend zu übergeben, während Sie auch Zeilen der Verwirrung speichern.

0

Mein offensichtlicher Fehler war der Versuch, einen Bereich von einer Nummer zu bekommen oder eine Methode auf ein Ergebnis anzuwenden, das ich bereits bekommen habe. Wenn Sie noch ein wenig weiter nachdenken, ist es sinnvoller, nach der Zelle in dem entsprechenden Blatt zu suchen und die genauen Koordinaten unter Verwendung des vorhandenen Indexes wie unten angegeben zu geben: .getRange.

var valuestoreplace = sheet2.getRange(isInColumnid+1, 9) 
Verwandte Themen