3

スクリプトエディタを使用して、Googleスプレッドシートにカスタム関数を作成しようとしています。

ユーザーが関数に引数として配列を与えることを許可できないようです。

次のようにハードコーディングすると、スクリプトが機能します。

    var values = SpreadsheetApp.getActiveSheet().getRange("G2:j30").getValues();

私がやりたいのは、配列を引数として渡すことです。

   function arrayToList(chosenArray) {
        ...
        var values = SpreadsheetApp.getActiveSheet().getRange(chosenArray).getValues();
        ...
   }
4

3 に答える 3

2

現在、この機能はGASに実装されていません。SOにも同様の質問があります(ここここ)。機能リクエストを課題追跡システムに投稿できます。

于 2012-09-24T14:32:30.873 に答える
1

Riku-関数をarrayToList(G2:j30)として呼び出してみましたか?Apps Scriptは、選択した範囲をカンマ区切りの文字列に変換すると思います(左->右、次に上->下)。

Rangeオブジェクトと同じではありませんが、少なくとも、選択した範囲のCSV文字列表現を取得できます。おそらくそれで十分ですか?

于 2012-09-24T14:40:47.247 に答える
1

Googleスプレッドシートのカスタム関数に引数として配列を渡すには2つの方法があります

  1. のような範囲参照を使用するA1:D5。使用法:=myCustomFunction(A1:D5)
  2. のようなGoogleスプレッドシートの配列表記を使用する{1,2;"Yellow","Orange"}。使用法:=myCustomFunction({1,2;"Yellow","Orange"})。注:スプレッドシートが小数点記号としてコンマを使用するように設定されている場合は/、列区切り文字として使用してください

参考文献

于 2019-06-17T16:28:12.167 に答える