• ベストアンサー

エクセルでセルの値を数式の範囲として使うには?

タイトル通りなのですが、エクセルでセルの値を数式中で範囲として使うにはどうすればよいのでしょうか? 例えばA1セルに「1」という値が入っており、B2セルに「10」という値が入っているとします。この時、数式中で、「A1」と「B2」を用いて、「E1からE10まで」を指定することは可能でしょうか。可能でしたらどのような数式を組めば良いのでしょうか? よろしくお願いします。

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

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

(1)タイプ1 セル範囲を(見かけは文字列で)入れるタイプの関数の場合 見かけで、普通に文字列で、手作業でセルに式を入れるような番地文字列を作ります。 A1に2、B1に10が入っているとします。 例えば D5に ="A"&A1&":B"&B1 するとD5は A2:B10 となります。 関数を手から入れるときは=SUM(A2:B10) ですから =SUM(D5) で良さそうですが、そうは行きません。 エクセルに番地として解釈してくださいよ、という意味で =SUM(INDIRECT(D5)) とします。 これで結果11 (A2:B10に A列  B列 5 1 6 しか、入っていないときの例)になります。 (2)タイプ2 結果的に範囲を対象にしますが、列や行(の隔たり)の数などを引数に、それぞれ独立して数として入れるタイプの関数の場合 例OFFSET関数 =SUM(OFFSET($A$1,1,0,9,2)) を =SUM(OFFSET($A$2,0,0,B1-1,A1)) セルの値をそのまま数字として考えればよい例。 この場合数の変わりにセル番地を入れると良い。

hide0129
質問者

お礼

丁寧にご解説、ありがとうございました。是非、今後とも参考にさせて頂きます。本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.5

◆SUMで確認してください 1)OFFSET関数 =SUM(OFFSET(E1,A1-1,,B2)) 2)INDEX関数 =SUM(INDEX(E:E,A1):INDEX(E:E,B2)) 3)INDIRECT関数 =SUM(INDIRECT("E"&A1&":E"&B2))

hide0129
質問者

お礼

ご回答ありがとうございました。いろいろ試してみたいと思います。

全文を見る
すると、全ての回答が全文表示されます。
  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.3

仮にSUM関数で、質問の範囲指定方法を使うとしたら =SUM(INDIRECT("E"&A1):INDIRECT("E"&A2))

hide0129
質問者

お礼

素早いご回答、ありがとうございました。おかげで問題を解決することができました。感謝致します。

全文を見る
すると、全ての回答が全文表示されます。
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

#01です。二番目の式を訂正します =OFFSET(E1,A1-1,0,B2,1)

全文を見る
すると、全ての回答が全文表示されます。
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

例えば =INDIRECT("E"&A1&":E"&B2) =OFFSET(E1,A1-1,B2-1)

hide0129
質問者

お礼

迅速なご回答ありがとうございました。早速試してみましたところ、上手くすることができました。本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルでセルの値によって数式を変えたい

    エクセル2003を使用しておりますが、セルの値によって数式を変えることはできますでしょうか。 例えば A1に切り上げの文字が入っていれば、B1はROUNDUP(100/3,0)に、 A1に切り捨ての文字が入っていれば、B1はROUNDDOWN(100/3,0)に、 A1に四捨五入の文字が入っていれば、B1はROUND(100/3,0)に、 のようにしたいです。 IF文を使えばもちろんできるのですが、すでに指定されている多数の 数式を、一括で置換したいと思っております。

  • 数式を使ったセルの範囲指定について(excel 2003)

    数式を使ったセルの範囲指定について(excel 2003)  こんにちは     タイトルの意味が解りづらく申し訳ありません。 excelで数式の結果を用いてセルの範囲指定を行いたいのですが、 範囲指定方法についてご存知の方いらっしゃれば、ご教授頂ければ と思います。  例) =C(E14+15)   (←実際にはうまくいきませんでした。) のようにセルの指定をする際、数式の結果を反映させたいと 考えています。  よろしくお願い致します。

  • エクセルで数式を入れても値が空欄になります

    タイトルの通りなのですが、 エクセルに数式を入れてもセルが空欄になって値が表示されません。 全く同じ数式を他のセルに入れると値が表示されるので 数式が間違っていることはないと思われます。 また、空欄になって値が表示されないセルにマウスをあてると 数式自体は入ってます。 時々、このような事象が起きるのですが どうやって改善すれば良いでしょうか?

  • Excelのマクロを使わず、数式内のセル指定範囲をダイナミックにすることはできますか?

    Excelで数式内に範囲を指定するときに、先頭と最後尾のセル番地を指定しますが、他のセルで指定した数値を指定したセル番地の行数に指定することはできますか? 例えば、以下のようなサンプルにおいて A B C D 1 10 2 4 2 32 3 42 4 20 5 17 6 =sum(A2:A4) C1番地に2、D1番地に4を入力すると自動的に A6番地でA2~A4の範囲を指定して足し算してくれるようなことをマクロを使わずに実現できるでしょうか?

  • エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセル

    エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセルの条件によって「値」のみ残す方法を模索しております。 使用する列および行の例 列=A、B  行=5~10、15~20、25~30(A列、B列共通) 上記対象セルの内訳 A列(参照セル)=数値 ※空欄の場合もあります B列(変更セル)=数式(Aセル数値 * ○○%) ※B1セルの例:=IF(A1="","",A1*10%) のような数式が記入されております。 (例) Private Sub CommandButton1_Click() ’参照セルの指定 ("A5:A10","A15:A20","A25:A30") のようなコード*** ※現在はAセルの範囲としておりますが、後に変更の可能性を有しますので範囲指定が可能な形式を望みます。 ’変更セルの指定 セル指定のコード*** ※現在はBセルとしておりますが、これも後に変更の可能性を有しますのでA・B・Cのような入力(もしくはA=1、B=2、C=3)による指定可能な形式を望みます。 ’参照セル(Aセル)に数値が入力されている場合、数式から得られた変更セル(Bセル)の値を”値のみ”で残す。 実行コード*** ※参照セル(Aセル)が空欄の場合は変更を望まないので、変更セル(Bセル)は何も致しません。(数式のまま残す) End Sub このようなマクロを望んでおります。 イメージとしては数値がAセルに入力されていた際に同じ行のBセルにおいて右クリックコマンド内〔コピー〕 → 〔形式を選択して貼り付け〕 → 〔値〕の貼り付けを行うことをご想像下さい。 列や行の変更が予想されるので変更が可能なことを望んでおりますが、結果が伴えば他の体裁は気に致しません。 お手数ですがご教授宜しくお願い致します。 以上

  • エクセルの他シートのセルの値をセル範囲で指定

    エクセルの他シートのセルの値をセル範囲で指定 お願いします。 sheet1のA1からA3まで1,2,3と入力されていてセルB1にA1:A3と入力されています。 sheet2のA1にsum(sheet1!A1:A3)と入れると6になるのですけれど、 A2にSUM(INDIRECT(sheet1!(B1))と入れると0になってしまいます。 これをどのように解決したらいいですか? よろしくお願いします。

  • Excelで数式はそのままで値のコピー

    セルA1,A2,A3,A4に値が2,3,空白,5 とあります。 セルB3には=A1*A2の式が入っています。 この時、A1からA4の範囲選択し、コピーし、B1にベーストしてB3に入っている式をそのままにするやり方を教えてください。 形式を選択して貼り付けで値のみにしてもB3の式が消えてしまいます。 最終的にはVBAで行うのでVBAの指定方法が解ればお願いします。 Excel2000です。

  • エクセル 数式

    Excelについて。 あるセルA1の設定されている数式(=SUM(E:E)など)を、 B1にコピーする方法は、ありますでしょうか? ※A1に入力されている数式をコピー貼り付けではない方法を探しています。 B1に、=A1とすると、=SUM(E:E)の計算結果が入力されてしまいます。 ゴール(表示される値)は同じですが。コピー貼り付けしか方法はないでしょうか。 お手数ですが、よろしくお願いします。 エクセル2007以上 VBAなら可能ですか?

  • エクセルで、範囲内の該当セルを探してその一つ下のセルの値を全て加算した

    エクセルで、範囲内の該当セルを探してその一つ下のセルの値を全て加算したいのです。どうすればよいですか? 例: _A, _B, _C, _A, _B, _D, _A, _F 20, _5, 40, 30, 20, 80, 40, 30 という範囲があった時に 項目 _A, _B, _C, _D, _E, _F 合計 90, 25, _0, 80, _0, 30 という集計がおこないたいのです。 データ量が結構な数ありますので、手動は避けたいのです。 よろしくお願いします。

  • エクセルVBA セルの値を使ってのセル選択

    セルに入力した値でセル選択の範囲を指定したいです セルの値がxの時 セルB1~Cx と セルD100~Ex+100 を同時に選択したいのですが どうすれば良いのでしょう? セルA1に50と入力されているとします Range("B1:C50,D100:E150").Select となってほしい訳です Range や Cells とか調べたのですが分かりませんでした

このQ&Aのポイント
  • 製品名P-TP900Wのラベル作成時にカットラインを入れたいのですが方法がわかりません。Windowsでは簡単にできましたが、MacOSの場合はどのようにすれば良いでしょうか。
  • ソフトやアプリの関連情報も教えてください。
  • また、接続環境や電話回線の種類についてもお知らせください。
回答を見る

専門家に質問してみよう