Windows関連のエラーメッセージって、何だかよくわからないことが多くないですか?先日もExcelで関数を入れているときに、こんなメッセージが表示されました。原因と対処法の備忘録です。
エラーじゃなくて警告メッセージ
「いくつかの数式の計算中にリソース不足になりました。そのため、これらの数式を評価できません。」って警告が出ました。別にエラーってわけでもないので、関数が間違っているわけでもなく、作業はできてしまうのでスルーしてもいいかなと思っていたんです。
ですが、結局何か作業をする度に、計算をするたびに表示されるので、いい加減スルーすることもできずに原因究明することにしました。
リソース不足って何だ?
そもそもExcelの場合のリソースとは往々にしてメモリのことを指しているようです。と言うことはメモリ不足というわけなんですが、別にシートがたくさんあるわけでもなく、PCもそんなにヘッポコスペックでもないので、なかなか物理的にメモリ不足というのはあんまり考えらません。
Google先生に教えを請うと、どうやら関数で使っている範囲指定の仕方に問題があるとのこと。
“列全体” ルール
Excel では非常に大きな配列を作成できますが、列全体または複数の列にまたがるセルを使用する配列を作成することはできません。列全体を使用する配列数式の再計算には時間がかかるので、Excel ではこの種の配列を数式内で作成することはできません。
関数を作り直して解決
へぇ。そうですか。確かに列全体を範囲指定して関数を作っていました。ではとりあえず適当な範囲を指定して、関数を作り直します。
すると、見事に警告メッセージは出なくなりました。
本当は、今回のファイルでは、値がどんどん増えていくので、できれば列全体にしたかったんですが、まあ止むを得ないですね。
メッセージはもう少しわかりやすくして欲しい
それにしても、この「いくつかの数式の計算中にリソース不足になりました。そのため、これらの数式を評価できません。」は優しくないですね。Excelがあまり得意じゃない人がこのメッセージを見たら、赤丸に×印なんか見せられた日にはパニックじゃないですか?
この手のメッセージを見るたびに、「わかりにくいなー」って思います。なんかもう少し分かりやすいメッセージにできないもんですかね?それか、いっそのことエラーにしてもらった方がいいんじゃないですか?潔く解決策を探れるので。