質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%

Q&A

解決済

1回答

396閲覧

excelのLookup関数の使い方について。

YuichiKataoka

総合スコア216

2グッド

0クリップ

投稿2016/02/08 14:50

Lookup関数で1つのセル(仮にA1のセルだとします)に「午前中」の文字が入ったら、他のセル(ここではB1だとします)は「0812」とセルを置き換えをしたいです。

その場合、B1のセルに以下の関数を書けばできます。

excel

1=LOOKUP(A1,{"午前中";"0812"})

同様にA1セルに「12:00-14:00」と入ったらB1セルに「1214」と置きたいと思い、B1セルは以下の様に書き加えましたが、A1セルに「12:00-14:00」と入っても「#N/A」と表示されてしまい、うまくできません。

excel

1=LOOKUP(A1,{"午前中","12:00-14:00";"0812","1214"})

文字列ではなく、数字を入れているので、うまくいかないようなのですがこの場合、どの様に記述したら良いでしょうか?

以下のサイトを参考にしました。
http://www.ipentec.com/document/document.aspx?page=excel-math-switch-case-function-use-lookup

それでも分からないので、ご存じの方いらっしゃいましたらご教授願います。よろしくお願い致します。

arly_times, 5o5o_wagon👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

=LOOKUP(A1,{"12:00-14:00","1214";"午前中","0812"})

と書けばうまくいくはずです。
LOOKUP には、参照先が必ずソートされていなければならないというルールがあるので、"12:00-14:00"より前に"午前中"があったのでは"12:00-14:00"が見つけられず #N/A となります。

キーとなる部分が数字(例えば)以下のように数値(として解釈できる文字列)であった場合

=LOOKUP(A1,{"0","1214";"午前中","0812"})

A1 に 0 と入力しても、"0"(文字列の 0 ) との比較でマッチしないとみなされて #N/A になってしまいます。
この場合は、A1 のセルの書式を文字列に変更した後、A1の内容を Back Space や Delete キーなどでいったん消して、その後で再度 0 と入力してみてください。

なお、配列形式のLOOKUP関数に関しては、Office2010 のヘルプには以下のように書かれています。
(あなたのOfficeのバージョンが違う場合はご自分の マシン上のヘルプを確認されることをお勧めします)

配列形式: 配列形式の代わりに VLOOKUP または HLOOKUP を使うことを強くお勧めします。
VLOOKUP の使い方についてはこちらのビデオを参照してください。
配列形式は、他のスプレッドシート プログラムとの互換性を維持するために提供されていますが、
機能が制限されています。

投稿2016/02/08 15:52

編集2016/02/09 14:16
kozuchi

総合スコア1193

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YuichiKataoka

2016/02/09 02:29

回答ありがとうございました。 できました。ちなみに、A1が「0」である場合に空白としたいとき、この関数に追加するにはどの様に書けば良いのでしょうか? "12:00-14:00","1214"; の前に書いたり、 "午前中","0812" の後に書いてもできなくて、教えて頂けると助かります。 よろしくお願い致します。
kozuchi

2016/02/09 11:56

セルの表示形式を文字列にしたらできませんか?
YuichiKataoka

2016/02/09 13:56

以下の様な関数にしているのですが、うまくできません。 =LOOKUP(A1,{"12:00-14:00","1214";"14:00-16:00","1416";"16:00-18:00","1618";"18:00-20:00","1820";"20:00-21:00","2021";"午前中","0812";"0",""}) 以下の様に置き換えたいです。 「12:00-14:00」→「1214」 「14:00-16:00」→「1416」 「16:00-18:00」→「1618」 「18:00-20:00」→「1820」 「20:00-21:00」→「2021」 「午前中」→「0812」 「0」→「」 >セルの表示形式を文字列にしたらできませんか? 文字列にしてみましたが、「#N/A 」と表示されてしまいます。
kozuchi

2016/02/09 14:17

他にお伝えしたいこともあったので回答を編集して追加しました。 ご面倒ですがご覧ください。
YuichiKataoka

2016/02/10 14:10

無事に解決しました。 回答ありがとうございました。感謝いたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問