0

GoogleスプレッドシートとGoogle Appsスクリプトの新機能です。ダイアログボックスでのデータのフォーマット

私は列形式でセルの範囲から取得しているデータを表示する方法を数時間探してきました。これを適切に表示するには、CSSにいくつかの並べ替えが必要な場合があります。可能であれば、私は2柱が欲しいです。現在、私が得るのは、データをカンマで区切ったテキスト行です。

また、次の空の行までデータを取得しようとしています。

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

データセットがこのシートのように見える場合、私は3番目の行までデータを取得したいと思います。私は以下のコードを見つけましたが、次の空のセルではなく、シート全体の最後の行まですべてのデータを取得します。

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

これは私がこれまで行っているコードです。私は彼らの他の解決策であるかどうかを見るためにウェブを辿るつもりです。

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

スクリプトに関する経験はありません。しかし、 '= ARRAYFORMULA(MATCH(1、( - ISBLANK(A1:A50))、0))'は最初の空行を与える。 –

答えて

0

これは、データの先頭から最初の空の行までの値の配列を返します。戻り配列は行の配列です。

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()); 
    } 
    } 
} 
関連する問題