-1

非常に長い列 (50000 行) があり、特定の計算を適用するために、セル (行数) の範囲 (サンプル) を選択したいと考えています。計算式を気にする必要はありません。ここでは、サンプリングの方法についてのヘルプが必要です。範囲 (サンプル) は、ウィンドウ サイズに基づいて変更する必要があります。ウィンドウ サイズは、選択できる数値です。つまり、以下の例では、ウィンドウ サイズを 4 に選択しました。つまり、サンプルが必要であり、これらのサンプルは、長い列の選択された行数に基づいています。すべてのサンプルのサイズ (行数) は、ウィンドウ サイズと等しくなります。ただし、各サンプルはメインの列から 1 つずつシフトされます。ここで、サンプルは別々の列にある必要があります。そのため、各サンプルの選択内容を必要な列にコピーする必要があります。説明のために、以下の例を想定します。

test
 1
 2
 3
 4
 5
 6
 7
 8
 9
 10

予想される出力は次のようになります。

main col sample1 sample2 sample3  sample4 sample5 sample6 
 1         1       2         3         4       5     6  
 2         2       3         4         5       6     7  
 3         3       4         5         6       7     8
 4         4       5         6         7       8     9
 5    
 6 
 7 
 8
 9
 10

サイズが 4 行の各サンプルですが、新しい各サンプルはメインの列から 1 ずつシフトします。メイン列の行数全体をカバーするために 6 つのサンプルを取得していることに注意してください。基本的に行うべきこと: sample1 は、メイン列の行 1 から行 4 までになります。ここで、sample2 は 4 つの値になりますが、行 2 から行 5 まで、メイン列からです。sample3 は、行 3 から行 6 までの 4 つの値になり、メイン列の範囲全体をカバーするまで続きます。したがって、選択と選択のコピーという 2 つの主要なプロセスがあります。

オフセットやその他の論理関数を使用しようとしましたが、うまくいきませんでした。マクロや VBA は使いたくない... この問題を解決する組み込み関数はありますか?

4

1 に答える 1