3

フィルタリングしたいテーブルがExcelにあります。最大100万行80列になります。すべての計算などは、dwn処理時間を短縮するために、プログラムで配列で実行されます。ただし、結果をフィルタリングして、ある列の値に基づいて特定の結果のみを表示し、その後に別のフィルター値に基づいて上位5%を表示したいと思います。

私が最初にシートを作成したとき、結果は65000に制限されていたため、データセットのサイズに問題はありませんでした。コードからワークシートフィルター関数を呼び出して、そのようにしました。より大きなデータセットでそのように行うことはできますか、それともシート上のデータセットと同じように配列をフィルタリングする方法はありますか?

ありがとう

4

3 に答える 3

1

すでに皆さんが述べているように、Excel 2007では100万行になりますが、現在使用していると思われるExcel 2003よりも遅いため、それを使用してフィルタリングすることはお勧めできません。

mysqlに加えて、msアクセスもオプションです。

于 2012-12-28T11:43:21.390 に答える
0

実際には、そのデータをAccessテーブルに配置し、Excelのデータベースクエリを使用して作業を行う必要があります。セル値に基づいて取得したデータをフィルタリングすることもできるため、優れた組み合わせです。
データベースにデータを保存すると、(実行する内容に応じて)別の興味深いオプションが提供されます。PowerPivotを使用してデータベースにクエリを実行することです。

于 2012-12-28T13:02:52.310 に答える
0

多くの点でリレーショナルDBを使用することをお勧めしますが、数式がない場合は、Excelを使用したデータ(100万行×80列)のフィルタリングはかなり高速です(フィルタリングの種類に応じて1秒または2秒未満)。十分なRAMがあると仮定すると、これはインデックス付けされていないDBテーブルよりも高速になる可能性があります。
数式がある場合は、フィルタリングプロセスによって複数の再計算がトリガーされないように、手動計算モードにする必要があります。

于 2012-12-28T16:27:42.867 に答える