0

Ich bin neu bei Google Tabellen und Google Apps Script.Formatieren von Daten in einem Dialogfeld

Ich habe nach Stunden gesucht herauszufinden, wie die Daten angezeigt werden, die ich von einem Bereich von Zellen in einem Spaltenformat bekomme. Ich brauche vielleicht eine Art zu CSS, um dies richtig anzuzeigen. Ich möchte 2 Spalte wenn möglich. Gegenwärtig bekomme ich eine Textzeile, in der die Daten durch Kommas getrennt sind!

Zusätzlich versuche ich auch, die Daten bis zur nächsten leeren Zeile zu bekommen.

A : B : C : D 
1 45 67 79 80 
2 68 66 49 19 
3 
4 47 68 59 81 

Wenn der Datensatz wie dies in dem Blatt sieht ich die Daten, bis die dritte Reihe zu bekommen. Ich habe einen Code gefunden (siehe unten), aber es werden alle Daten bis zur letzten Zeile im ganzen Blatt gespeichert, nicht die nächste leere Zelle.

var Avals = ss.getRange("A1:A").getValues(); 
var Alast = Avals.filter(String).length; 

Dies ist der Code, mit dem ich bisher arbeite. Ich werde weiterhin das Internet durchsuchen, um zu sehen, ob es sich um andere Lösungen handelt.

function errorPrompt(missvar) { 
     var missVar = "test"; 
     var ccurr = SpreadsheetApp.getActive().getSheetByName('Sheet1').getRange(2,2).getValues(); 
     var exchangename = SpreadsheetApp.getActive().getSheetByName('Sheet1').getRange(3,1,4,2).getValues(); 

     var htmlOutput = HtmlService 
     .createHtmlOutput(exchangename) 
     .setSandboxMode(HtmlService.SandboxMode.IFRAME) 
     .setWidth(400) 
     .setHeight(300); 
    SpreadsheetApp.getUi().showModalDialog(htmlOutput, ccurr +' Detail'); 
    } 
+0

Keine Erfahrung mit Skripten. Aber '= ARRAYFORMULA (MATCH (1, (- ISBLANK (A1: A50)), 0)) geben Sie die erste leere Zeile. –

Antwort

0

Ich denke, dass dies ein Array von Werten aus der Spitze Ihrer Daten zurück nach unten, aber nicht der ersten leeren Zeile darunter. Das Rückgabearray ist ein Array von Zeilen.

function getDataDownToTheFirstEmptyRow() 
{ 
    var ss=SpreadsheetApp.getActive(); 
    var sh=ss.getActiveSheet(); 
    var rg=sh.getDataRange(); 
    var vA=rg.getValues(); 
    for(var i=0;i<vA.length;i++) 
    { 
    if(!vA[i].join('')) 
    { 
     return(sh.getRange(1,1,i,sh.getLastColumn()).getValues()); 
    } 
    } 
} 
Verwandte Themen