こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルの素朴な疑問

シート1にデータ入力をし、シート2・シート3シート4に入力データを多くリンクさせると、ブックを開く時間が長くなったり、データ入力時にカーソルの動きがが遅くなります。何かいい方法を教えてください。(VBAを使った方法でもいいです)


現在の状況
・データのリンク(=A12等で処理)
・データをリンクさせ関数も多く使用している
・印刷処理として、VBAを使用している
・エクセル2002を使用

投稿日時 - 2002-01-22 21:53:07

QNo.203511

困ってます

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

処理の内容、データ量が不明なので何とも言えませんが、色々見てきた経験です。

重たくなっているシートを見ると(思いつくままに・・・)

 (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の古い機種ですが、数千件~数万件の計算でも余りストレスは感じていないですね。(長いときにはコーヒーを飲んだり、煙草を吸ったりしているから?)ご参考に。

投稿日時 - 2002-01-23 01:14:17

お礼

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

投稿日時 - 2002-01-23 20:13:42

ANo.2

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

入力時に早ければいいのですね?(私のは2000ですが同じだと思います)

簡単な方法として

ツール - オプション - で計算方法のタグをクリック
計算方法を“手動”にします。保存前の再計算はチェックを入れておいたほうがいいでしょう。

これで入力時のイライラはなくなります。

印刷前等に再計算(f9)をさせればOKです。

投稿日時 - 2002-01-23 00:21:33

お礼

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

投稿日時 - 2002-01-23 20:08:06

あなたにオススメの質問