• 締切済み

セル番地を返してくれる関数

  A   B   1 日付  個数 2 1/11  3 3 1/12  2 4 1/13  6 5 1/14  4 のような表があったとします。 そして、1/12日の個数は「2」ですよね。 この2を返すのではなく、 1/12日の個数の「セル番地」を返す関数が知りたいのです。 実際はもっと複雑な式らしく、セル番地が必要なのだそうです。 (私ではない人がやっているので、詳しくはわかりませんが・・・) LOOKUPのようなカンジでセル番地を返す関数ってありますか?

みんなの回答

  • zinchan
  • ベストアンサー率49% (97/197)
回答No.5

 No.4では勘違いしてしまっておりました。すみません。訂正です。ただ、その方には説明にはなるでしょう。上記ご質問に対するネストは、日付範囲がA2:A5にあり、D2に探したい日付の入力セルがあった場合です。MATCH関数で範囲内の該当する値が、上から何行目かを探し、それをADDRESS関数で指定してあげれば、答えになります。MACHT関数の最後の0は、該当する値と一致したもののみを検索するように指定する様式を示します。 =ADDRESS(MATCH(D2,A2:A5,0),2,4)  よって、No.3のcomv氏があげた回答が正解です。よけいなことをしてしまいました。せっかくなので、日付が更新され入力欄が増加することを考え、また、comv氏のご指摘に則したネストを追加してみました。  =IF(ISNA(ADDRESS(MATCH(D2,A:A,0),2,4))=TRUE,"該当するものがありません",ADDRESS(MATCH(D2,A:A,0),2,4))  どうでしょうか

  • zinchan
  • ベストアンサー率49% (97/197)
回答No.4

 その方は、場合によって参照範囲が変化する式(ネスト)を作りたいのでしょうね。  セル番地に関する関数は、私が知っているものでは3つあります。 1) =CELL("address",A1:D1) 2) =ADDRESS(1,4,1) 3) =INDIRECT(E5,TRUE)  1)は、選択したセル範囲(単独セルでも可)のアドレスを表示しなさいという関数で、答えはセル範囲のうち、最も左上のセルの番地を返します。(ここでは$A$1)  2)は、行の上から何番目、列の左から何番目かを指定し、セルの参照形式を番号で指定(1:絶対参照、2:行を絶対参照で列を相対参照、3:略、4:相対参照)すると、指定した参照位置のセル番地を表示します。(ここでは行が1番目、列が4番目なのでD1を、絶対参照で返す指定ですから、$D$1)  3)は、単独ではあまり意味がないが、式中に組み込む(ネスト)と便利な関数で、指定したセル番地に書いてあるセル番地もしくは参照範囲の内容を表示します。(ここではE5に記されたセル番地の内容を返します)  例えば、=INDIRECT("B"&$A$5)とあって、A5に3と書いてあれば、B3セルの内容を表示します。また、A5に4と書いてあれば、B4セルの内容を表示します。B3に卵と書いてあれば卵と表示され、B4セルに数値が入っていればその数値を表示します。  また、この関数は、セル参照が変わる場合がある式(ネスト)を作るときに最適です。1)、2)は単独のセル番地しか表示することができません。そこで、2)の式を、C5セルに=ADDRESS(1,1,4)としたら、A1を返し、C6セルに=ADDRESS(1,4,4)としたらD1を返しますね。E5セルに=CONCATENATE(C5,":",C6)とあると、E5セルにはA1:D1と表示されます。そこでこの関数の出番です。単独で使っても意味ないので、他の関数と組み合わせてネストを作ってみましょう。例えば, =AVERAGE(INDIRECT(E5,TRUE))とあれば、E5にはA1:D1とあるので、A1からD1までのセルを参照したことになります。A1からD1まで順に1,2,3,4と数値が入っていれば、答えは2.5と表示されます。=sum(INDIRECT(E5,TRUE))なら、10と表示されます。=count(INDIRECT(E5,TRUE))なら、4とでます。C6セルの=ADDRESS(1,4,4)の列番号を指定する数値が、条件式で変わるようにしておけば、参照範囲を条件別に変えることができるようになります。C6セルの式に、=ADDRESS(IF(COUNT(A:A)>1,count(a:a),1),4,1)としてみると、A列に2つ以上のデータが入っていたらA列に入っているデータの数分の行数を指定したことになり、A2に数値が入っていたら、答えはD2となります。よって、E5セルはA1:D2となり、=count(INDIRECT(E5,TRUE))の答えは、A1:D2の範囲内にある数値データの個数を返してくれます。

  • comv
  • ベストアンサー率52% (322/612)
回答No.3

こんにちは! 少々意味を理解し切れていないのですが 例えば C1に 1/12 とあれば =ADDRESS(MATCH(C1,A1:A5,0),2) もしくは ="B"&MATCH(C1,A1:A5,0) 検索値が無い時のエラー回避は別途(IF(ISNA()等)必要です

  • k_eba
  • ベストアンサー率39% (813/2055)
回答No.2

=cell("col",対象セル) =cell("row",対象セル) で良いと思います 詳しくは、イルカさんに聞いて見てください。(^○^) 参考になれば幸いです

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 試してないですが、セルのRowプロパティとColumnプロパティで取得出来るのではないでしょうか。 では。

関連するQ&A

  • セル番地を求める関数はありますか?

    一行目に日付が入ってるのですが 今日の日付を見つけて、そのセル番地を求める関数はありますか? A3セルにその値を入れたいです。

  • COUNTIF関数で検索条件にセル番地を指定する方法を教えてください

    COUNTIF関数を使用しています。 検索条件にセル番地を指定する方法を教えて頂けますでしょうか。 例えば、下記の通りデータが入っていた場合に セルA1 = 90 セルB1 = 100 =COUNTIF(A1,"<=100") という式をセルC1に入力し、 セルA1の数値が100より小さい場合はデータ個数は”1”と返し、 セルA1の数値が100より大きい場合はデータ個数は”0”と返すようにしました。 しかし、 =COUNTIF(A1,"<=B1") という式のように 検索条件にセル番地を指定した場合は正しくデータの個数が1個だと表示されません。 どのようにしたらセル番地を指定しながら正しい結果を返せるのでしょうか。 恐れ入りますが、どなたかご教示頂けますでしょうか。 どうぞ宜しくお願いいたします。

  • エクセル関数で {=TABLE(,セル番地)} って?!

    よそから来たエクセルのデータなのですが、150行程度16列の表です。 この表に使われている関数がこれまで見たことも聞いたこともなく、関数のヘルプにもありません。 表中のどのセルも、 {=TABLE(,セル番地)} という式がはいっていて、表示される数値は違うのですが、セル番地はみな同じなんです。 1.これはどのような意味でしょうか? 2.配列関数のようなのですがCtrl+Shiftでは確定できず、さわったセルが元に戻せなくなってしまいました!「式が正しくない」とメッセージが出て、終了もできず、タスクマネジャーでエクセルを強制終了しなくてはならなくなりました。これはCtrl+Shiftでは確定でききないのでしょうか? お助けください。 ( ̄∇ ̄; ?

  • ある日付が記載されているセル番地を知る方法?

    ある日付が記載されているセル番地を知る方法についてお尋ねします。 A列に西暦で5年以上の日付が上から下に入力してあります。 例えば、2008/1/25の日付が、A1000番のセルに入力されていた場合、 2008/1/25はどのセル番地かを調べるとき、現在はスクロール して自力でセル番地を探しております。 そこで、関数を用いて2008/1/25が記載されているセル番号を探す方法が あるのでしょうか? よろしくご指導お願い申しあげます。

  • エクセルで条件に該当するセルの番地を表示させるには

    色々探してみて、自分で関数をいじってみたんですが、 #REF!や#VALUE!、#N/Aと言ったエラー表示ばかりに なってしまいましたので教えてください。 ある列内に実数が入っているセル番地を表示するには どうしたらいいでしょう?   A  B  C 1 0  15  0 2 0  0   0 3 10  0  0 4 0  0  -5   という表があるとき、 A列は10、番地はA3 A5のセルに「10」 A6に「A3」 B列は15、番地はB1 B6のセルに「15」 B7に「B1」 と表したいんです。 1つの列には「0」か「0以外」のどちらかしか存在しません。 +の数字も-の数字も表示できるようにしたいんです。 どなたか、アドバイスをお願い致します!

  • エクセル セル番地の取得について

    A1~A50のセルに関数式(条件式)が入っており、このA1~A50のセルの値が1又は0と表示されます。その時1が表示されているセル番地を取得したい(知りたい)のですがどうすれば良いのですか?1が表示されるセルは複数あります。 たぶんマクロになると思うのですがご教示お願いします。

  • Excelのユーザー定義関数

    シート名の一部とセルの値が一致したらLOOKUP関数をかえす関数を作成したいのですが… 例として。。。 シート名:20020301売上表、セルA1:2002/3/1の値があります。 シート名の"01"とA2の日付"1日"が一致したら、セルA2にLookup関数をかえす関数を作成したいのですが。。。 よろしくお願いします

  • セル番地の入力されているセルを参照する方法を教えてください

    それぞれaddress関数を使って、A1~A4にセル番地が入っています。A1とA3のセル番地を参照した数式を作りたいのですが、どうすればできるのでしょうか。教えてください。  | A | B | C | D| 1 A4 2 A10 3 C4 4 C10

  • EXCEL関数 空白セルを詰める関数

    図1の表を図2のようにオートフィルタを使わず表示させる関数で下記を見つけましたが、実際使うときには、番地がA1からの位置ではなくAA60ぐらいの位置でこの関数を実行すると表示されません。 どの部分をその番地にあわせるとよいでしょうか? <図1>     A     B 1   あいう 2         えお 3   かきく 4         けこ 5   さしす <図2>各行の空白セルを詰めて表示させる     A     B     10  あいう   えお 11  かきく   けこ 12  さしす 13 14 【関数】 A10: =IF(ROW(A1)>COUNTA(A$1:A$5),"",INDEX(A$1:A$5,SMALL(IF(A$1:A$5<>"",ROW($A$1:$A$5),""),ROW(A1)))) Ctrl + Shift + Enterキーで式を確定します。 右と下にコピーします。

  • セル番地という言い方

    ExcelのA1やB1というセル番地の呼び方について 教えてください。 本には「列番号と行番号でセルの位置を表し、そ れをセル参照と言う」と記載されています。 セル番地と言う言い方と、セル参照という言い方、 どちらが正式ですか。

専門家に質問してみよう