- ベストアンサー
エクセルの早いパソコン
エクセルでマクロを組んだのですが、巨大なデータベースのため、処理に数日かかってしまいます。(2年ほど前に買ったdell)パソコンの購入を検討していますが、エクセルの処理能力は何が重要なのでしょうか?CPU、メモリ・・・ パソコンはあまり分からなくってすいません。お勧めの機種なんかも教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
> 今4日程度かかっているものを少でも縮めたいと思っています。 高性能なコンピューター上で動作させることで2日で終わると仮定しましょう。 あなたはそれで満足するでしょうか?きっとしないと思います。 最初は満足するかもしれませんが、後に不満に変わるでしょう。 私なら、処理する為だけで2日間中PCつけっぱというのは嫌気がさします。 夜間処理という風に考えても終わっていないわけですから。 2年ほど前のPCでも4日かかるのなら、今のPCでも1日じゃ絶対終わらないと思います。 > データ量がエクセルのシート全部使っても4シート分あります。すべて関 > 連し合っていて、一つの変数を変えるとすべての再計算が必要となり、答 > えが出ます。それぞれに計算式が入っています。 『一つの変数を変えると』という意味が分かりませんが、 再計算するということはExcelの再計算機能に頼ってるということですよね? 再計算しない作りにしたらどうなるのでしょうか? また、AccessなのかSQLServerなのか分かりませんが、データベースは最適に正規化が行われているでしょうか? データベース(SQL)で導き出せる値をデータベース(SQL)だけで 完結できる作りにしたらどうなるのでしょうか? 再計算された結果出力された全ての情報が1つの実行タイミングで全て必要となるのでしょうか? 処理するタイミング(段階)を分けて負荷の軽減を図ることは出来ないのでしょうか?
その他の回答 (4)
- めとろいと(@naktak)
- ベストアンサー率36% (785/2139)
マクロの作り方などを一切変えず、コンピューターのスペックだけでどうにかしようと するのなら、10万も20万も投資が必要になりますよ。 Core2Quod、Core2ExtrameというCPUが出てからは今は全体的にIntelCPUに軍配が上がっています。 マクロだけで完結させず、マクロから外部の最適化されているデータベース を呼び出すとか、処理を行う過程で再計算を行わないとか、 速度遅延のネックとなっている場所を突き止めてそこだけ解決させた方が コスト的には全然安いです。 それに現状がやたら遅いわけですから、どれだけ凄いスペックにしたとしても、 劇的な速度向上は望まれないと思います。
- suteteko
- ベストアンサー率42% (440/1040)
No.2さんの言うとおりデュアルよりクアッドのCPUがおすすめですが、 それを有効に使いたい場合Excel2007といったマルチコア対応の ソフトに切り替えた方がいいでしょう。
補足
ありがとうございます。Excel2007がマルチコア対応のソフトであることを初めて知りました。同時に他の作業はしないので、マルチコアは意味がないのかな?って考えていましたので、検討させていただきます。
- smpc
- ベストアンサー率45% (1006/2198)
まずは、No.1さんの回答のように もっと高速に動作するマクロを組むか、 データベースならAccessなどに切り替えることだと思います。 買い換えるなら、整数演算の速いと言われている AMD系のCPUを積んだマシンになります。 また、計算中でも他のことをできるように デュアルかクアッドコアのCPUがおすすめです。 例を挙げておきます。 https://shop.tsukumo.co.jp/bto/bto.php?BTO_SET_CODE=EX-A153&TYPE=8300XX
補足
ショップの人に聞いたらAMDよりペンティアムのほうが早いよ!と言われたのですが、実際はどうなんですかね?
- めとろいと(@naktak)
- ベストアンサー率36% (785/2139)
どんなものなのか分かりませんが、データベースの最適化、 処理の最適化、運用の最適化を検討することはできないのでしょうか? マクロ規模の処理で数日というのは明らかに何か間違っている気がします。 CPUやメモリが多ければ多少早くなるでしょうが、どんなソフトウェアの 設計上でも、最も効率よく全てのCPUとメモリを食いつぶすわけではありません。 パソコン(つまり家庭用)では限界はすぐくるでしょうし、 それ以上の費用の捻出は検討できないでしょう。
補足
マクロはできる限りカリカリに仕上げています。画面の表示をoffにしたり、再計算は必要な時にしかONにならないようにしたり・・ しかし変数が入ると何十マ万?それ以上?の再計算が必要となります。
補足
データベースを呼び出しても、再計算に時間がかかってしまいます。 データ量がエクセルのシート全部使っても4シート分あります。すべて関連し合っていて、一つの変数を変えるとすべての再計算が必要となり、答えが出ます。それぞれに計算式が入っています。今4日程度かかっているものを少でも縮めたいと思っています。この計算もその一部であって、この答えを複数集め、さらに計算が必要なのです。