いつもお世話になっております。
エクセル2007で表を作成しているのですが、関数の使いすぎ??でファイルの動作が非常に重くなって困っています。何とか軽くしたいと考えているのですが。よろしくお願いします。
(質問)
(1)セルの参照方法によって動作に影響するのでしょうか?(例)相対参照<絶対参照
(2)列を参照するとき(A1:A:2000)を(A:A)とするといかがでしょうか?2000行までドラックするが面倒なので(A:A)としました。←これが一番効いているのかな??
(3)たとえばCOUNTIF関数で済む計算をCOUNTIFS関数で行うと動作が重くなる。
分かりずらい文章で申し訳ありませんがご意見を聞かせてください。
No.3ベストアンサー
- 回答日時:
重たくする要因としては、
色々あるかも知れませんが、
結構複雑なことを 関数で書いても
書き方次第では そう遅くなりませんよ♪
ただ、
セルの使用領域が 無駄に大きいのは
結構きついですね。
動作が緩慢なExcelを
私か目の当たりにした場合、
1、Pcの外部を 参照してないか
2、外部ファイルを 参照してないか
(名前定義も含めて)
3、式が無謀、無駄、
または、遅いものを 多用してないか
(VLOOKUPを多用、等)
4、セルの使用域が 無駄に多過ぎないか
5、変なVBAが 動いていないか
等を、確認しますよ?
因みに、
使用域は、PF5を押して出るメニュー内で
選択すると、知れます。
サッとだけですが
お役に立てて居たならば
幸いです。
No.2
- 回答日時:
(1)も(2)も(3)もあまり関係ないでしょう。
あえて言えば
(3)にある CountIf関数もCountIfs関数も配列関数なので
多用すれば重くなります。
何かの集計でしょうかね。
ピボットテーブルとかに作業を置き換えられないですかね。
No.1
- 回答日時:
>セルの参照方法によって動作に影響するのでしょうか?
いいえ。そういう事はありません。
>列を参照するとき(A1:A:2000)を(A:A)とするといかがでしょうか
実際に使用している関数によります。ただしごく一般論で言えば、関数に与える計算対象セル範囲は、手抜きをして無駄に広げると僅かながらでも遅くなる原因にはなります。
ただし一方でシートをきれいに使えてない場合、つまり一例を挙げるならCtrl+Endキーを押したときにシートの最後のセルにジャンプしますが、実際に確認してみると「意識して使ってる表範囲よりもずーっと下の行のセルまで飛んでってしまった」みたいな状況では、セル範囲の与え方によって明らかに応答が違ってくる場合もあります。
>たとえばCOUNTIF関数で済む計算をCOUNTIFS関数で行うと動作が重くなる。
2番目のご質問と同じで、実際に使用している関数によって動作が重くなります。
ここでようやっと「あなたの具体的な数式」の断片が出てきましたが、COUNTIF関数は元々遅い部類の関数で、しかも無駄に大きな範囲を与えたり、無駄にたくさんのセルに放り込んでおいたりすると、増々遅くなる関数の一つです。
またCOUNTIFSも同様ですが、もっともCOUNTIFSを「使いたい(適切な)状況」においてSUMPRODUCTとか使ってるのに比べたらそれでも遥かに高速です。
>何とか軽くしたい
試しにどっかの1列の数式を上から下まで丸ごと消して、それでシートが軽くなったら「その列で使ってた計算式」が原因だとはっきり判りますね。
その数式の具体的な内容をあなたの実際のエクセルからキチンとコピーして別のご相談としてしっかり丁寧に説明して、具体的にどういう数式(この場合は計算のやり方)に直せばもっとサクサク動くようになるのか、新しいご質問として投稿し直してみて下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで自動集計(特定セルコピー月ごとに値貼り付け)したい。 6 2023/06/25 11:37
- Excel(エクセル) エクセルの複数のセルを一括で絶対参照にする方法 3 2023/06/14 15:57
- Excel(エクセル) Excel 表の作成について 3 2022/06/16 12:15
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) Excelでなぜこのような式をつかっているのでしょうか、行に1,2,3と連番を振るだけなのに 5 2023/04/08 20:00
- その他(プログラミング・Web制作) Pythonでexcelのvbaを作成、実行する方法について Pythonで表の自動集計プログラムを 3 2022/07/09 09:58
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- Excel(エクセル) 【エクセル】文中に別シートのセルの内容を自動入力したい 6 2022/11/17 11:30
- Excel(エクセル) IF 関数で「〇〇 という文字を含む場合」の分岐処理で表示された数字はSUMで数字集計できますか? 3 2022/08/02 16:29
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel2010の並べ替えで行の高さ...
-
エクセルで複数の勤務時間ごと...
-
エクセルで離れたセルを離れた...
-
60進法で複数セルの足し算、引...
-
リース初心者です 利子率の計...
-
エクセル関数で {=TABLE(,セル...
-
VBA 条件が一致した場合の...
-
エクセル2007 の右クリックメ...
-
プルダウンで選択すると隣のセ...
-
エクセルで作った書類に、パン...
-
EXCELでR1C1参照形式の絶対参照...
-
Excelのオートカルクの結果をコ...
-
エクセルを使った分配比率の求...
-
エクセルの計算式ですが・・・
-
エクセルデータをワードへ反映...
-
関数での日当計算の方法
-
Excelで歩合給の計算をしたいの...
-
Excelのセル内にある特定文字で...
-
EXCELで変更していないのに『変...
-
Excelで空白セルをつめて表示さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel2010の並べ替えで行の高さ...
-
エクセル関数で {=TABLE(,セル...
-
リース初心者です 利子率の計...
-
エクセルで離れたセルを離れた...
-
プルダウンで選択すると隣のセ...
-
エクセルで複数の勤務時間ごと...
-
VBA 条件が一致した場合の...
-
エクセルで作った書類に、パン...
-
60進法で複数セルの足し算、引...
-
今日の日付が第n曜日かを求める
-
至急! Excelで歩合計算
-
エクセルの行高さが、挿入作業...
-
エクセルデータをワードへ反映...
-
Excelのオートカルクの結果をコ...
-
Excelハイパーリンクのアドレス...
-
エクセルを使った分配比率の求...
-
Excelで歩合給の計算をしたいの...
-
Excelの空白行を上に詰めるVBA...
-
エクセルデータを拡大/縮小して...
-
エクセルで一番下の日付や時刻...
おすすめ情報