• 締切済み

2段階リストでリストに記号も含ませたい

たとえばこのような表を作ります。 ・元データ(元の値)はシート1にある。 ・元データを反映するのはシート2である。 ・元データは、1段階目(上位カテゴリ)としてたとえば「東京都」「神奈川」「静岡」・・・と続き、それぞれの2段階目(下位カテゴリ)に東京は「中央区」「港区」、神奈川は横浜市、横須賀市・・・と続きます。 ・上、下いずれも「-」という記号をリストに含める。 ・つまり、1段階目で「-」を選択したとき2段階目でも「-」と呼び出す。 このようにしたいのですが、他の語は正常に反映されますが、この記号のときだけ、2段階目には反映されません。 OFFSET関数でできるそうですが、当方、関数についてまったく無視なので、式を教えてください。よろしくお願いします。

みんなの回答

  • SPIKE-NLOS
  • ベストアンサー率33% (522/1540)
回答No.1

OFFSET関数で2段階リストを作成し、記号も含ませることができます。OFFSET関数は、特定のセルから指定された行数・列数分離れたセルの値を取得する関数です。 2段階リストを作成するには、次の手順に従います。 1. シート1に、1段階目のカテゴリを入力します。 2. シート1に、2段階目のカテゴリを入力します。 3. シート2に、OFFSET関数を使用して、1段階目のカテゴリから2段階目のカテゴリを取得します。 OFFSET関数の構文は次のとおりです。 ``` OFFSET(参照セル, 行オフセット, 列オフセット, 高さ, 幅) ``` 参照セルは、1段階目のカテゴリを入力したセルです。行オフセットは、1段階目のカテゴリから2段階目のカテゴリを取得する行数です。列オフセットは、1段階目のカテゴリから2段階目のカテゴリを取得する列数です。高さは、2段階目のカテゴリを取得する行数です。幅は、2段階目のカテゴリを取得する列数です。 たとえば、シート1のA1セルに「東京都」、A2セルに「神奈川」、A3セルに「静岡」、B1セルに「中央区」、B2セルに「港区」、B3セルに「横浜市」、B4セルに「横須賀市」と入力した場合、シート2のA1セルに次の式を入力することで、1段階目のカテゴリから2段階目のカテゴリを取得することができます。 ``` =OFFSET(A1, 1, 0, 1, 1) ``` この式は、A1セルから1行下に移動し、0列右に移動し、1行、1列の範囲の値を取得します。そのため、B1セルに「中央区」が表示されます。 シート2のA2セルに次の式を入力することで、1段階目のカテゴリから2段階目のカテゴリを取得することができます。 ``` =OFFSET(A2, 1, 0, 1, 1) ``` この式は、A2セルから1行下に移動し、0列右に移動し、1行、1列の範囲の値を取得します。そのため、B2セルに「港区」が表示されます。 シート2のA3セルに次の式を入力することで、1段階目のカテゴリから2段階目のカテゴリを取得することができます。 ``` =OFFSET(A3, 1, 0, 1, 1) ``` この式は、A3セルから1行下に移動し、0列右に移動し、1行、1列の範囲の値を取得します。そのため、B3セルに「横浜市」が表示されます。 シート2のA4セルに次の式を入力することで、1段階目のカテゴリから2段階目のカテゴリを取得することができます。 ``` =OFFSET(A4, 1, 0, 1, 1) ``` この式は、A4セルから1行下に移動し、0列右に移動し、1行、1列の範囲の値を取得します。そのため、B4セルに「横須賀市」が表示されます。 このように、OFFSET関数を使用して、2段階リストを作成し、記号も含ませることができます。

frau
質問者

補足

ご回答ありがとうございます。 理屈はわかりました。肝心の構文を教えてください。

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

関連するQ&A

  • OFFSET関数で2段階リストを作りたいけれど難解

    添付した画像は例です。「データ」のリストで2段階リストを作ることを目的とします。 B列の1段目リストで「関東」を選ぶと、2段目には「東京」「千葉」・・・のリストが、同様「東海」を選ぶと、2段目には「静岡」「愛知」・・・というようにリスト化されます。 しかし問題がありました。最後の「-」についてです。 これまでINDIRECT関数を使ってきましたが、「名前の定義」をするとき、「-」などの記号が登録できません。そのため1段目の「-」と対応させることができませんでした。これを解消するのがOFFSET関数だそうですが、関数素人の当方としては一応調べましたがカウンタ関数やマッチ関数も混合されるので難しいです。 この例を使い、構文を説明しながら優しく教えてください。よろしくお願いします。

  • 2段階リストをOFFSET、MATCH関数で作る

    2段階リストを、「名前の定義」つまり「INDIRECT関数」を使わず、OFFSET関数とMATCH関数で作るのが目的ですが、成功しません。 添付した画像の「A列目」に1段目リストを、「B列目」に2段目リストを作ります。 E列からH列は元データです。 たとえば「リスト」表示にせず、単に「りんご」をB2に表示させたい場合は =OFFSET(D1,1,1,2,) こうなるわけです。 なので「行数」はこれであっています。 問題の「列数」がMATCH関数になるのでわかりずらいです。 また、もうひとつの条件ですが、リストに空欄を作らない、 大項目、小項目共に()などの記号が入っても、表示させることができればと思います(INDIRECT関数ではこれができません)。 ミスっている原因と正しい式をわかりやすく教えてください。

  • エクセル 2つのプルダウンリストを連動

    1シート (1)東京、神奈川、静岡… (2)東京→港区、品川区… 神奈川→川崎市、横浜市… を入力します。 2シートに2つのプルダウンリストを設置 仮に 1番目のプルダウンリストは「東京」を選択した場合 2番目のプルダウンリストは「港区、品川区…」 「神奈川」を選択した場合「川崎市、横浜市…」 といった流れをしたいのですが、どのようにしたら良いでしょうか? 宜しくお願いします。

  • 単一セル内での2段階リスト表示は可能ですか?

    Excelのリストが長い場合、二段階方法(「セル範囲に名前をつける」のと「INDIRECT関数」)がありますが、これだと項目を2つに分けなければなりません。 そうではなく、ひとつのセルで、リストが2つでてくる方法はあるのでしょうか? たとえば47都道府県をすべてひとつのリスト内でくくると探すのが大変です。 前者の場合「地方名」という項目には以下リスト「関東」「中部」…を作成します。 1項目目で関東選択すると、2項目では「東京」「神奈川」…というようにグループ分けされた下位カテゴリのリストが表示されます。 以上の方法の例↓ https://office-hack.com/excel/pulldown-menu-interlock/ しかし目的はこのような方法ではなく、あくまでも単一セル内でのことです。 たとえば1段階目は「関東」というセルにマウスポインタを乗せると、自動で2段階目のカテゴリ「東京」「神奈川」等のリスト一覧がでてくる…という作成方法ができるのでしょうか? ネットなどではよく見かけますが…。

  • 記号を表記できる関数

    エクセルで、1=○、2=△、3=×というように、 数字を打てば、記号がセルに反映されるという関数を作りたいのです。 別シートで上記の記号表を作っておいて、 たとえばA1に数字の1を入力したらB2に○が表記されるという 関数はどう入力すればいいのでしょうか? 教えて下さい。

  • セルに入っている住所に都道府県名を加えたい

    あるセル(x)に住所が入っています。 その住所は都道府県から入っている場合もあるし、都道府県抜きの場合もあります。 都道府県の抜きの場合に、都道府県を入れて住所を編集し、別のセル(Y)にセットしたいです。 「港区、、、」であれば「東京都港区、、、」 「横須賀市、、、」であれば「神奈川県横須賀市、、、」 そんな感じです。 特定地域ですので、市町村名は限られています。 どんな風にエクセルを作成すれば良いでしょうか?

  • 住所から「区」を抜き出すには

    いつもお世話になっています。 Excelで「区」を抽出する関数を教えていただけませんでしょうか。 幾つか調べましたが、参考にしながらも上手く作る事ができませんでした。 神奈川県川崎市幸区●●●●●123456 ⇒ 幸区 東京都港区●●●●●●123456 ⇒ 港区 そして、市があって区が無い場合は「市」を抽出したいです。 神奈川県大和市●●●●●●123456 ⇒ 大和市 よろしくおねがいいたします。

  • EXCELで担当者から利用者名を抽出する方法

    利用者名簿約100人に対して曜日ごとに担当する人を振り分けたデータがあります。 別シートで担当者が各曜日に担当する利用者リストを出したいのですがうまくいきません。 MACH関数とOFFSET関数を使うと出来そうなのですが・・・ 下記では表示できませんでした。 どなたかご教授おねがいします。 =OFFSET(【データ元シート】!B5,MATCH($A$2,【データ元シート】!B5:B100,0),-1)

  • 【エクセル】表から条件に合ったデータを別シートに順番に抽出したい

    エクセルの表である条件にあてはまる行を 別シートに順番に抽出されるような関数を教えてください。 シート1のB列にあるデータが"渋谷区"のとき シート2のE74からE80くらいまでに シート1のC列のデータを上から順に抽出されるようにしたいです。 【シート1】 A        B         C 1 東京都 渋谷区  PC 2東京都  港区  PC 3東京都 新宿区  マウス 4東京都 渋谷区  ペン 5東京都 渋谷区  モニタ ・ ・ ・ 10 【シート2】 E 74 PC 75 ペン 76 モニタ ・ ・ ・ 80  【補足】 元の表(シート1)を編集することがあるので 自動的に反映されるよう、関数で作成できたらと思います。 シート2の構成上、抽出後のソートや、フィルタオプションは避けたいです。 わかりづらい文章で申し訳ございませんが どなたかいいアドバイスがありましたら教えてください。 お礼は明日になってしまいますが、必ずご返答いたします。 よろしくお願いいたします。  

  • PHPフォームの作り方を教えていただけないでしょうか?

    たとえば、都道府県の選択を契機に、市町村区のリスト項目を自動的に入替えが可能なフォームを作りたいのですが、どのようにしたらできますか?次のような様子で動かしたいと思っています。 <select>  都道府県:東京都 ←(1)東京都を選択したら、  市町村区:港区、文京区、葛飾区、大田区・・・・(2)それに応じた選択項目が現れる。 <select>  都道府県:神奈川  市町村区:藤沢市、厚木市、鎌倉市、横須賀市・・・・

    • ベストアンサー
    • PHP

専門家に質問してみよう