• ベストアンサー

Excel関数で表の列番号取得について

初めまして。 Excelの下記のような表から行ごとに○がついている列の番号を 関数で取得したいのですが、よい方法が思いつかないので質問させていただきました。 (ネットで調べても、行2と列Bが交差するセルに○をつける関数、ばかりが出てきてしまい、 知りたい情報にたどり着けませんでした) 【表】   A B C 1  2   ○ 3 ○ 【取得したい内容】 1 について○がついていないことをしりたい 2 について○がついている「B」を取得したい 3 について○がついている「A」を取得したい どうぞ、お知恵をお貸しください。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 質問のA~Cは列番号・1~の数値は行番号だとします。 一例です。 (1)データはA~C列まで (2)入力データは「○」だけ (3)1行に「○」は複数存在しない という前提です。 表示したいセルに =IF(COUNTA(A1:C1),CHOOSE(MATCH("○",A1:C1,0),"A","B","C"),"データなし") としてオートフィルで下へコピーではどうでしょうか?m(_ _)m

sapoief
質問者

お礼

ご回答いただきありがとうございました。 希望通りの結果を得られました。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

列番号を取得して何をしたいのかによって、本当はもっと合理的な関数があると思うのですが、ご質問のA~Zまでの列番号を取得するだけなら以下のような関数で表示できます。 =LOOKUP("○",A1:C1,CHAR(COLUMN(A1:C1)+64)) 上記の式は○データが無い場合はエラーが出ますので、例えばExcel2007以降のバージョンをご使用なら以下のようなエラー処理をします。 =IFERROR(LOOKUP("○",A1:C1,CHAR(COLUMN(A1:C1)+64)),"") #Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので、質問の際には必ずバージョンを明記するようにしましょう。 また、このようなご質問では、操作の目的(列番号を知って何をしたいか)やデータ範囲などの詳細を記載しておけば、より的確な回答が寄せられると思います。

sapoief
質問者

お礼

ご回答いただきありがとうございました。 大変参考になりました。

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

通常列番号のABCを調べても後にほとんど使い道はありませんが、それはまぁさておき。 =IF(COUNTIF(A1:C1,"○"),LEFT(ADDRESS(ROW(),MATCH("○",A1:C1,0),4)),"") とかいった具合で。

sapoief
質問者

お礼

ご回答いただきありがとうございました。 大変参考になりました。

関連するQ&A

  • エクセルで別シートの値を取得したいです。

    エクセルで質問があります。 別シートからセル値を取得したいです。 ただ、セル番地は行番号、列番号で指定し、 行、列番号はセルに入力してある値を使いたいです。 例 Aシート(値格納シート) B1セル値=1000 -------------- Bシート(値取得シート) A列=行番号入力 B列=列番号入力 C列=Aシートの取得関数 A2セル値=1 B2セル値=2 C2セル=1000(取得値) C2セルの関数に、A2とB2の値を使って Aシートのセル値を取得したいです。 よろしくお願いします。

  • Excel2000で表を作っていますが、うまくできません

    Excel2000で表を作っていますが、うまくできません(T_T) セルA1+B1=C1 C1+A2+B2=C2 C2+A3+B3=C3.... のようなC列に合計欄がある表を作っています。(元帳のような物です) (A列、B列の欄には必ずしも全て数字が入る訳ではありません。) しかし、セルA列とセルB列に数字を入力していない場合、C列に全て「0」が 表示されてしまいます。 数字入力後は、全て下まで残高が入ってしまいます。 セルA列,B列に最後に数字を入れた行まで、Cに数字が入るようにしたいのですが、 できないでしょうか? (30行まで表を作って20行まで数字を入れたとき、21行から30行に残高も入らないように したいのです。) 何だかうまく説明できませんが、是非教えていただけますでしょうか。 よろしくお願いします。

  • Excel関数

    緊急です。 ExcelでVBAを使用せずに、 セルA1と列Bのどれかが一致した時に、 一致した行の、つまりセルA1と一致したB○の横の列Cにある値をとってくることって出来ますか?

  • EXCEL表の文字列が対象セル内に含まれるか

    シートAのB2の文字列が000-みかん_東京_001とあるとして、 シートBのB2:りんご、B3:みかん、B4:いちご C2:横浜、C3:東京、C4:名古屋 D2:赤、D3:青、D4:白 という表があるとします。 シートAのB2セルにシートBのB列とC列から両方含まれる行を探し、D列の値を取得したいのですがどのような関数を利用するのが望ましいでしょう? ちなみに、シートAのB2が調査文字でC2を答えとして、調査対象の行を追加していきたいと思ってます。 お知恵をおかしいただければ幸いです(^^)

  • セルの結合がされた表をHLOOKUPで検索する場合について

    Excel初心者です。質問があります。 下記のような表があります       A列   B列   C列   D列 行番号1    12/1       1/1 行番号2  件数   金額  件数   金額    行番号3   2    100   3    200 行番号5   1/1 ここでHlookupを使って下記のように検索します A5に1/1と入力して 件数を検索するには   =HLOOKUP(A5,A1:D3,3) → 3 ここまではいいのですが 金額の「200」を検索するにはどのような関数を使えばよいのでしょうか? ※行番号1の「12/1」と「1/1」はセルの結合をしており 「12/1」のセルはA1、「1/1」のセルはC1になっています。 HLOOKUP関数とVLOOKUP関数又はCOLUMN関数を組み合わせれば出来るのでしょうか よろしくお願いします。

  • 値を検索して列番号を返す関数

    エクセルの関数で A1 A2  あ い となっている時、「い」は何列目なのかを取得する関数はありますか? 「B」ではなく、「2」というように列番号を返したいです。 よろしくお願いします。

  • EXCEL2007の関数について

    EXCEL2007を使って集計を取ることになりました。 下記の表のD列に以下のような関数?を記入したいのですが分からないので教えてください。 B列に「お」の記入がある場合のみ(B2)、一つ右のセル(C2)の文字列を「お」のセルから右に2、上に1移動したセル(D1)にコピーしたいです。この場合で言うとD1のセルだけに「か」と記入されるようにしたいのです。   A  B  C  D 1 あ  い  う   2 え  お  か 3 き  く  け D1のセルの場合には =OFFSET(B2,,1) と入力するまでは分かったのですが、これにB2のセルの文字列が「お」の場合のみという条件が付けられません。 私のEXCELの知識は普段関数を使わないのでFOM出版の「よくわかるEXCEL2007」の基本編と応用編を2冊勉強し終えて課題に取り組んでいる程度です。 お手数ですが分かる方、ご教示願えませんでしょうか。

  • Excelでセルの英字を取得する関数

    Excelでセルの英字を取得する関数を教えて下さい。  A B C D E F G 1 2 3 4 5 6 7 エクセルは 横のヘッダにアルファベットが並んでいます。 縦のヘッダに数値が並んでいます。 縦のヘッダは =ROW() で求まります。 1行目で書けば1 5行目で書けば5 と返ってきます。 同じ様に、 =COLUMN()は A列で書けば1 E列で書けば5 と返ってきます。 A列で書けばA E列で書けばE と返って来る関数が欲しいです。

  • VLOOKUP関数 列番号の設定の仕方教えて下さい

    VLOOKUP関数の列番号を 1、2、とかではなく、 計算して列番号を設定することはできますか? シート2 に入っているデータを参照して シート1 に関数をいれて、表示させたいと思っています。 シート2 データは 3行目に、項目(品名、(1)材料名、(2)数量、(2)材料名、(2)数量、...、(10)材料名、(10)数量) A列、 B列、 C列、 D列、 E列、...、 M列、 N列 クッキー、小麦粉、100、卵、1、...、砂糖、20 クラッカー、小麦粉、100、米粉、10、...、りんご、0.2 が入っていて、4行目から100行目くらいまでデータがはいっています。 シート1 の セルA5に品名を入力すると、 シート2の(1)材料名がセルA6に、 (1)数量がセルB6に、 (2)材料名がセルA7に、 (2)数量がセルB7に、 ... (10)材料名がセルA15に、 (10)数量がセルB15に、 入るように作りたいのですが、VLOOKUPの列番号を COLUMNやINDEXなど試してみましたが、エラーばかりで うまくできません...VLOOKUPでは無理なのでしょうか? どなたか詳しい方教えてください。よろしくお願いします・

  • EXCEL関数にて

    いつもお世話になっております。 Excelの関数にて質問なのですが、下記のようなデータが セルに入っているとします。 A列 B列    C列    D列  1  06/06/10 06/07/01 06/06/04 2  06/06/07 06/06/25 06/06/10 3  06/06/15 06/06/20 06/06/15 2  06/06/15 06/06/01 06/06/20 3  06/06/01 06/06/07 06/06/09 2  06/06/01 06/06/02 06/06/30 処理1.A列が1で、且つ日付が最大値(最小値)のもの 処理2.A列が2か3で、且つ日付が最大値(最小値)のもの AND関数とMIN関数とMAX関数を、使って色々ためしているのですが うまくいきません。 どういった書式で求められるのか、ご教授頂けませんか? それから単純にB列の最小値を得ようとしても、求められないのは 重複してたりするからですか?? 重ねて、教えていただけると助かります。

専門家に質問してみよう