• ベストアンサー

エクセルの素朴な疑問

シート1にデータ入力をし、シート2・シート3シート4に入力データを多くリンクさせると、ブックを開く時間が長くなったり、データ入力時にカーソルの動きがが遅くなります。何かいい方法を教えてください。(VBAを使った方法でもいいです) 現在の状況 ・データのリンク(=A12等で処理) ・データをリンクさせ関数も多く使用している ・印刷処理として、VBAを使用している ・エクセル2002を使用

質問者が選んだベストアンサー

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

処理の内容、データ量が不明なので何とも言えませんが、色々見てきた経験です。 重たくなっているシートを見ると(思いつくままに・・・)  (1)今不要な算式が多量に登録されている。      事前に1年365日分の算式を数年分登録しているような例です。  (2)複雑な算式を数千行にわたって登録している。      数値計算を順番に行っていくような場合です。  (3)8桁数値から年月日を求める時など、作り手により処理時間に差が出ます。  (4)関数や書式で解決するのにやたら複雑な手順になっている。  (5)過去の計算結果は不要なのに再計算している。      日単位の処理なのに前日までのデータの再計算をしている。  (6)VlookUpで多量に参照している。  (7)VlookUpが多量にあり、参照元が増減、変更される  (8)配列数式を使えば間単になるが分からないケース  (9)(1)から(6)の組み合わさったケース  (10)その他? 対応策? (1)と (2)入力と出力を分け、計算が必要な時にマクロで算式をコピーしたり、    モジュール内で計算し、値を出力したりすると早くなります。    ユーザー定義関数を使えば速くなるかもしれません。分析ツールには遅い関数もあります。 (3)算式で年月日にしないで事前に年、月、日に分割しておく (4)日付・時刻の計算や文字列操作関数は余り使われていない。    ゼロの表示を算式で行っているのもよく見ます。大体書式で解決します。 (5)表計算だからしかたない?データベースなら前のデータは意識していないですよね。    過去を引きずらないように複数シートに展開する方法もあります。 (6)これはよく見ます。VlookUpは計算が遅い気がします。多量には使わない方がいいでしょう。    多量に使う場合は、計算後、コピーして値にして同じ箇所に貼り付けてしまいます。 (7)参照元を変えるとVlookUpが多量にあると時間がかかるでしょう。余り使いません。    IndexでいいのにVlookUpを使っているのも見ます。 (8)説明しづらいですが、複数条件の計算などが簡単にできることがあります。    知らないと、とんでもない大げさな処理になることもあります。 計算を手動にすると効果があるかもしれません。 見当違いかもしれませんが気が付いたことを書いてみました。 会社ではExcel97、PCは133Mzの古い機種ですが、数千件~数万件の計算でも余りストレスは感じていないですね。(長いときにはコーヒーを飲んだり、煙草を吸ったりしているから?)ご参考に。

m-happy-t
質問者

お礼

今関数等をチェックしていますが、なかなか、原因の箇所がわかりませんが、原因の箇所が特定できたら、また質問しようと思います。そのときはよろしくお願いします。 それと、いつもnishi6さんには、ご回答いただきありがとうございます。 これからもよろしくお願いします。

その他の回答 (1)

  • 4yuzu4
  • ベストアンサー率15% (15/96)
回答No.1

入力時に早ければいいのですね?(私のは2000ですが同じだと思います) 簡単な方法として ツール - オプション - で計算方法のタグをクリック 計算方法を“手動”にします。保存前の再計算はチェックを入れておいたほうがいいでしょう。 これで入力時のイライラはなくなります。 印刷前等に再計算(f9)をさせればOKです。

m-happy-t
質問者

お礼

試してみました(少し良くなりました。) ありがとうございます。