• ベストアンサー

EXCELでのデータ処理範囲の動的切替

EXCELでデータを関数で処理する場合に、例えば1行から1000行までデータが入力されているケースで、関数で処理する範囲を1行~100行、2行~101行、5行~105行のように任意の範囲のデータを処理したい。 (処理する範囲を動的に切り替えたい)場合はどのようにすればいいのでしょうか?できればマクロ等を使用せずに 関数などの処理でできればと思っています。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

質問の意図がはっきりしないが、 「動的にきりかえる」って「切り替える前」の「状態」と 「後」の状態は、手動の範囲指定ですか。 それだと難しそう。 文字で変動させるなら、下記の例などあります。 下記の問題と一脈通ずるところありますか。 A1:A8に 1 1 2 1 2 3 4 5 B1にA3、C1にA8と文字が入っているとする。 =SUM()の例なら、答えを出したいセルに =SUM(INDIRECT(B1&":"&C1))のようにINDIRECT関数を使うと=SUM(A3:A8)が計算されて17になります。 B1やC1の値を適当に変えると、それに合わせて集計される。

その他の回答 (2)

  • jindon
  • ベストアンサー率43% (50/116)
回答No.3

簡単に A1, A2にそれぞれ開始セル、最終セルを入力して 例えば:A1にB1, A2にB10で =sum(indirect(A1&":"A2)) でB1:B10の範囲指定ができます。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.2

普通に考えれば相対参照なら B1=SUM(A1:A100)としてB2以降にコピーすれば B2=SUM(A2:A101) B3=SUM(A3:A102) と変化しますが.... 別の方法としてB1にA1と入力 C1=SUM(OFFSET(INDIRECT(B1),0,0,100,1)) B1の内容で開始セルが変わります。

関連するQ&A

  • Excel Vba でデータの範囲を知るには?

    Excelを使用していますが、マクロ(VBA)で、シートのデータの範囲を知るにはどうすればよいのでしょうか。  印刷プレビューを行うと、自動的にページ数が求めらていますが、これは、シートのデータの範囲(列及び行の最大値)を判別しているからできるのだと思います。  これを、VBAで行、及び列のMAX値を取得したいのですが、そのメソッド(プロパティ)を知りたいのです。  どなたかご教授ください。

  • エクセル セル範囲にデータが記入されているかを知りたい

    いつもお世話になります。 エクセル2000を使用しています。 「セル範囲のA2~B20に、データが含まれているセルが一つもない場合は、処理を実行しない。一つでも存在する場合は以下の処理をする」 というマクロを書こうとしているのですが 「セル範囲のA2~B20に、データが含まれているセルが一つもない」、「一つでも存在する」 という意味の式の書き方が分かりません。 お手数ですが、教えていただけますでしょうか。 また、現在はエクセルのVBA入門書程度のもの("できるEXCEL2000 マクロ&VBA編")しか手元にないのですが、このようなことが分かりやすく理解できる書籍などをお知りでしたら、教えていただけますでしょうか。

  • エクセルのグラフでデータ範囲を参照するには

    エクセルでグラフを作成した後に、データ数の変更等や データ範囲を変更などで、「データ範囲(D):」の入力範囲に 表のセルを指定したいのですがどうしてもうまくゆきません VBAやマクロを使用するのも敷居が高いし、どなたか教えて 頂けますでしょうか

  • EXCELでこんなことできますか?(実験データを処理する方法)

    今までは、実験データは全て自分で計算し、全部を自分で入力してきました。 でも、次のようなことがしたいのでアドバイスよろしくお願いします。 エクセル2000を使っています。 1.自分で任意の数を4つ決めます。(a,b,c,dとする。) 2.それを(x-a)*(x-b)*(x-c)*(x-d)とした計算結果がx^4+Ax^3+Bx^2+Cx+Dとします。 3.2.の計算結果のA,B,C,Dを取り出して、他の式に組み込むことって出来ますか?関数かマクロとかで。 関数とかマクロとかよく分かりません。EXCELで実験のデータなどを処理する方法って、皆さんはどのようにして勉強されているのでしょうか? 適当な本などがないような気がするのですが。(会計などの本はあふれかえっているのに。) 良ければ本も紹介して下さい。 あと、エクセルで行列の計算とか出来ますか?

  • エクセル・ハイパーリンクの関数処理

    エクセル・ハイパーリンクの関数処理 Excel 2007を使っています。 セルC列にハイパーリンクを含むデータが並んでいます。 このURLをD列に取り出したいのですが、 関数処理で出来ますか。出来るのでしたら教えてください。 出来ない場合は、マクロでも結構です。お願いします。

  • AccessのデータをExcelに貼り付け

    AccessのデータをフィルターしてExcelに貼り付けるには、AccessとExcelのどちらのVBAを使えば良いでしょうか。 前提:Accessに10フィールド100行くらいのデータがあり、Excelに氏名と日付を入力する欄がある。 処理:AccessのデータをExcelに入力した氏名と日付でフィルター(AND検索)→フィルターしたままExcelに貼り付け→そのデータをExcelの関数とVBAで処理(複雑な関数なのでAccessで処理できない)

  • エクセルのデータ集計について

    エクセルのデータ集計について質問です。現在windowsxp・office2007を使用しています。 エクセルの1ファイルに10シート、シート全てにデータが入力されており、このファイルが20弱あります。 ここから必要な数値を参照して、集計ファイルに集計しているのですが全て手作業で非効率的です。 何度か関数を使用して効率化を図ったのですが、どうも意図した結果は出ませんでした。(COUNTIF・COUNTIFS関数と、「統合」機能を使用しました) 調べてみたところ「マクロ」機能を使うと効率化できるかも、と思ったのですが、どのようなマクロを組めば良いのか、また、マクロ機能を使用しない場合どういった関数を使用すれば簡単にまとめられるのかご教授いただければと思います。

  • 関数エラーによるエクセルマクロの処理中断

    そんなにエクセルVBAが得意じゃないです。よろしく教示くださいませ。 セルにエクセル関数を設定し、マクロを働かせて使用しています。 セルに想定外のデータが入力されると、関数エラーを起こしてしまうのですが、 このエラーが発生すると、マクロも中断になってしまいます。 関数エラーが発生しても、マクロが中断しないような、マクロ命令って あるのでしょうか。 実は、マクロで想定外データのチェックをかけてるのですが、その想定外データが入力されると、 警告は発するのですが、関数エラーが発生し、マクロが中断してしまうのです。 マクロに組み込むべき、コマンドはあるのでしょうか。

  • Excel : グラフの「元のデータ」の「データ範囲」での関数使用

    グラフを毎月、現在の月までのデータ範囲に変えたいと思っています。グラフの「元のデータ」の「データ範囲」にOFFSETとTODAYを組み合わせて入力しましたが、もう一度開くと数式が消えていました。「データ範囲」では、関数は使えないのでしょうか。またこれを実現するには、マクロを使うしかないのでしょうか。

  • Excel関数について,参照データの範囲が変わる時

    Excelの関数について教えてください。 まずExcelで、”Sheet1とSheet2があり、Sheet2には、Sheet1のデータをもとに情報が入力されるように関数{IF(Sheet1!A1="","",Sheet1!A1)}を200行目まで入力されている”ものがあるとします。 それを使って以下のような作業を行います。 1. 職場のシステムからExcelデータを抽出する 2. 抽出したデータをエクセル(sheet1)に貼り付ける。 3. Sheet2にSheet1をもとにした計算結果が表示される 以上が現在、行っている作業です。 ただ問題があり、毎回、sheet1に貼り付けるデータの範囲(行数)が異なるため、sheet2のどこまでに数式を設定しておけばいいのかわかりません。今は適当に200行目まで数式を入力してあります。 『質問』Sheet1に貼り付けるデータの範囲(行数)と同じ範囲(行数)分だけ、Sheet2にも数式が表示されるようにしたい。(例)sheet1に2345行あるデータが貼り付けられた→それをもとに、Sheet2に関数を2345行目まで、自動で入力する。 大変お手数ですが、分かる方教えて頂けますか?よろしくお願いします。

専門家に質問してみよう