[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セル範囲の参照:A:A か A2:A100 が良いのか』(マイク)
いつもお世話になっております。
ずっと疑問に思っていたので質問をお願いします。
関数でセルを参照する際
データ範囲がA2:A100 とあり、かつ最終行が可変する場合
データを参照する場合よくA:Aと記載することがあります。
(50列分位設定しています)
この場合、きちんと参照先の最終行まで絞ったほうが
パソコン処理上なにか問題がありますでしょうか?
例えば、若干パフォーマンスが落ちるなど
素朴な疑問でした。
アドバイスお願いいたします。
< 使用 Excel:Excel2019、使用 OS:Windows10 >
こんにちは! そりゃ、列全体よりは絞った方がいいと思いますよ?
私は範囲が詰まっていて可変な場合は、 =OFFSET(A1,,,COUNTA(A:A)) とかしたりしてます。
これも列全体ですけど、、ここ(A:A)を若干大きめにするとかでしょうか? (SoulMan) 2020/02/29(土) 13:09
コメントありがとうございます。
例えば
帳票がA1:AA100(データ最終行は可変する)があり
その中の必要な列のデータ合計値を取得する場合です。
以前は、データ最終行を決め打ちしていましたが可変するので
これ以上は増えないだろうという行番号を100+10行分くらい拡張していました。
ただ、行の削除挿入すると次第に、100行を切る場合があるので
該当する列自体全部参照するようにしました。
ただ、使っている行数は100少し超えるくらいなのに
列全体を参照するとなると途方も無い範囲
これは、パソコンに無理させているのでは?
という素朴な疑問が湧いてきました。
(マイク) 2020/02/29(土) 13:26
ただ、行の削除挿入すると次第に、100行を切る場合があるので
↓
ただ、行の削除挿入すると次第に、100行を切ったり、参照範囲を超えてしまったり。
(マイク) 2020/02/29(土) 13:27
様々な要因があるでしょうから一概にはいえませんが、 >行の削除挿入すると次第に、 というのは、話をややこしくしますよね?
データというのは、どこかに蓄積しておいて そこからどこかに必要な分だけ抽出できるといいですね
Excelにはそういう機能が沢山ありますから、 考え方としては、 データの蓄積 ↓ 必要なものだけを抽出 ↓ 加工 みたいな流れが一般的で得意な分野だと思います。 (SoulMan) 2020/02/29(土) 13:39
どんな数式なのかとか詳細不明ですが 表をテーブル化すると、行の削除・挿入をしても数式の範囲は自動的に可変となります。
詳しくは「Excel テーブル化」とかでネット検索してみてください。
参考まで (笑) 2020/02/29(土) 13:46
一般的には「限定した方が無難」とは言えます。
ただ、限定する為に余分な労力を掛ける場合は、 その分のコストも考慮する必要があります。
使う関数の種類によっても違います。 SUMPRODUCTの列参照は最悪と考えます。
COUNTIF系は列参照でも全部見に行かないと言われています ※個人的な推測ですが、SUMも同じだと思っています。
検索系の関数はヒットするまでに平均どのくらいのデータを見るかにもよります。 直ぐヒットするようなら、後は見に行かないから、列参照でもどうと言うこともない。(ハズ) もし、2分探索モードが使えるなら殆ど気にする必要が無いくらい速いです。
(半平太) 2020/02/29(土) 14:17
ネット上でそういった情報を見つけられなかったので助かります。
(マイク) 2020/03/01(日) 09:13
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.