2016-03-25 3 views
1

Ich wiederhole eine Spalte in einem Blatt, das über mehrere Zeilen hinweg verbundene Zellen enthält. Z.B.Google Apps Script - Ermittelt den Wert einer Zelle in einem zusammengeführten Bereich

 |----- 
row 1 | 5 
     |----- 
row 2 | 
row 3 | 3 
row 4 | 
     |----- 
row 5 | 
     |----- 
row 6 | 1 
     |----- 

Ich verwende die Zusammenführung hier, um einen einzelnen Wert zu zeigen, der von mehreren Zellen geteilt wird.

Das Problem ist, dass, wenn ich versuche, die Daten zu sammeln und ich bin mit Range.getValues() nur der ersten Zelle in dem fusionierten Bereich einen nicht leeren Wert hat (im Beispiel ['5','3','','','','','1']), so kann ich nicht wissen, welche Zellen tatsächlich leer sind und welche zu einem zusammengelegten Bereich gehören.

Die einzige Problemumgehung, die ich fand here war Farbe alles und schau auf die Farbe der Zellen (aber das ist super hässlich).

Irgendeine nette Weise, also dieses Problem zu lösen?

+3

Dies wurde bereits hier beantwortet. http://stackoverflow.com/questions/11025543/how-do-i-know-if-spreadsheet-cells-are-merged-using-google-apps-script – SpiderPig

Antwort

0

Auch möglich Abhilfe ist zu setzen und dann horizontale Ausrichtung zu bekommen.

Dieser Code:

function GetMyRange() { 
     var sheet = SpreadsheetApp.getActiveSheet(); 
     var range1 = sheet.getRange("A1:A6"); 
     range1.setHorizontalAlignment("right"); 
     var vals = range1.getValues(); 
     var alignment = range1.getHorizontalAlignments(); 


     Logger.log(vals); 
     Logger.log(alignment); 
    } 

gibt das Ergebnis:

[[5.0], [3.0], [], [], [], [1.0]] 

[[right], [right], [general], [general], [right], [right]] 

aus Ausgangsbereich:

 |----- 
row 1 | 5 
     |----- 
row 2 | 
row 3 | 3 
row 4 | 
     |----- 
row 5 | 
     |----- 
row 6 | 1 
     |----- 

"allgemeine" ausgerichteten Zellen Sie die Antwort geben wird, wo fusionierten Bereich .

+0

Ich mag dies danke. Es ist nicht darauf angewiesen, dass jemand die Farbe der Zellen ändert –

Verwandte Themen