[[20200229123855]] 『セル範囲の参照:A:A か A2:A100 が良いのか』(マイク) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『セル範囲の参照: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

SoulMan さん

コメントありがとうございます。

例えば

帳票が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.