2016-08-12 17 views
0

シート内に2つの名前付き範囲があり、データを含むセルのデータのみを抽出したいと考えています。今のところ空のセルを配列に引き込むことになります。シート内の名前付き範囲を使用してgetActiveRangeのようなものでこれを行う方法はありますか?名前付き範囲のAppスクリプト配列

この時点でもう何を試していいのか分かりません。

+0

getRange(....)。getValues()を使用して、配列をフィルタリングして空のフィールドを削除することができます。 –

答えて

0

これを行うには基本的に2つの基本的な方法があります。

1).getValues()を使用して、値の2次元配列を取得します。次に、for()ループとif(){}else{}ステートメントを組み合わせて使用​​して空の値をチェックします。値が空でない場合は、新しい配列に.push()を追加します。

2).getValues()を使用して、値の2次元配列を取得します。アレイをクリーニングするには、.filter()を使用してください。 .filter()は新しい配列を返しますので、これをvarとして設定します。他の配列と同じようにvarを使用することができます。 .filter()には()の条件を使用するか、操作を実行してその関数を.filter()に渡す関数を設定します。 .filter(myFunction)

ガイドは、ここではオプション2に含ま:http://www.w3schools.com/jsref/jsref_filter.asp

あなたは同じ光景を介して、またはここにStackOverflowの上for() {ループを使用して、適切な反復でより多くの指導を探すことができます。

+0

ありがとう!列内のデータの長さが列ごとに異なる可能性がある場合は、データを持つ列ごとに列を作成し、その列を反復処理してからn列に移動すると、すべて同じ列数になります私はこれを明らかに複雑にしようとしています。 – Rockn

+0

データはどのように収集されていますか?あなたのデータは、行単位または列単位でグループ化されていますか?データ処理の最も簡単な方法は、同じ主題の各データポイントを列にし、各主題が新しい行であるようにすることです。 – MasterCrander

+0

たとえば、フォーム提出をしているとしましょう。それぞれの新しい提出物は、それぞれの列に対応する新しい行です。サブミッションが存在することで、一番満たされた列も存在するので、最も充満している列を反復し、 'i'行の' n'列を呼び出すことでその行の他のセルを参照できます。 – MasterCrander

関連する問題