Normanのコンピューターには、高速プロセッサーと32GBのRAMが搭載されています。統計の目的で、彼はしばしば百万行のワークシートを使用する必要があります。彼はまだExcel2007を使用しており、これらの巨大なブックでしばらく実行した後はうまく機能しません。 (実際には、頻繁にクラッシュします。)それ以外の場合は、起動後に問題なく動作します。 Normanは、このような大規模なデータセットを操作するときに、より信頼性の高い操作を行うために何ができるのか疑問に思います。彼は、Excel 365の方がうまく機能するのか、それともRAMの容量が増えるのか疑問に思います。

まず、ハードウェアの問題に対処しましょう。お使いのシステムは、Excelで大規模なデータセットを操作するのにおそらく十分です。ただし、ハードウェアの更新を計画している場合は、RAMを増やすことをお勧めします。これにより、Excel(およびその他のプログラム)は、メモリとハードドライブのディスクキャッシュ間でデータを交換する必要がなく、メモリ内でより多くのデータ操作を実行できます。結論:この1つの理由だけでシステムをアップグレードしないでください。ただし、他の理由でアップグレードする場合は、大量のRAMを搭載したシステムを入手してください。

それでは、Excelに移りましょう。使用しているバージョンのExcel(Excel 2007)には、インスタンスあたり最大2 GBのメモリ割り当てがあり、以前に開いたブックで使用されていたすべてのメモリが完全に解放されているようには見えません。

これが「最初は機能するが、後では機能しない」問題の原因である可能性があり、これを回避する唯一の方法は、Excelを定期的に閉じて再起動することです。

さらに、Excel2007は32ビットバージョンでのみ使用できます。それ以降のバージョンのExcelに更新すると、64ビットバージョンのプログラムをインストールできるようになります。これにより、より多くのメモリをアドレス指定できるため、これは重要です。つまり、より大きなデータセットをより簡単に操作できます。

Excelのバージョンをアップグレードしたら、次の手順に従って、ExcelがCPUの能力を最大限に活用していることを確認する必要があります。

。 [Excelのオプション]ダイアログボックスを表示します。 (Excel 2010以降のバージョンでは、リボンの[ファイル]タブが表示され、[オプション]をクリックします。)

。ダイアログボックスの左側にある[詳細]をクリックします。

。オプションの[数式]セクションが表示されるまで下にスクロールします。 (図1を参照)

。 [マルチスレッド計算を有効にする]オプションの横にあるチェックボックスをクリックします。

。 [このコンピューターのすべてのプロセッサーを使用する]の横のラジオボタンが選択されていることを確認します。 (このオプションは、手順4を完了した後でのみアクセスできます。)

。 [OK]ボタンをクリックします。

これらの手順を実行した後でも、ワークシートに多くの数式が含まれていると、データに問題が発生する可能性があります。数式が多いほど(特に、数式に常に再計算する必要のある揮発性関数が含まれている場合)、Excelにかかる「負荷」が高くなることは理にかなっています。数式(および揮発性関数)の数を減らすためにできることは何でも、Excelの応答性が高くなります。

それでは、Excel自体を使用することの妥当性を見てみましょう。根本的な問題は、そもそもExcelにそのような大きなワークシートが本当に必要かどうかです。作業しているデータの性質によっては、データをデータベース(Microsoft Officeの多くのバージョンで提供されているAccessなど)にロードしてから、データベースプログラムを使用してデータを処理する方がよい場合があります。要約。その時点で、はるかに小さなレコードのサブセットをExcelにコピーして、プレゼンテーション用の最終的な分析またはフォーマットを行うことができます。

データがデータベースに格納された後の別のアプローチは、Excelの機能を使用してデータにアクセスすることです。たとえば、(うまくいけば)新しいバージョンのExcelに更新したので、Power Query(Excel 2016ではGet&Transformと呼ばれます)またはPower Pivotを使用してデータベースへの接続を確立し、データを処理できます。これにより、全体的な処理が減少します。 Excelにロードします。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(4809)は、Microsoft Excel 2007、2010、2013、および2016に適用されます。