• ベストアンサー

VLOOKUPについて(参照先で長文、複数表示)

VLOOKUPについて質問です。 エクルのシートに「リスト」と名前をつけ、横並びでA列に「番号」、B列に 「会社名」C列に「住所」D列に「電話番号」E列に「URL}というデータを入れてあります。 それを別のシートに表示させたくて以下のように表記しています。 =VLOOKUP(A2,リスト!,A2:E50,2,FALSE) いくつか表示させていて、表示させたい内容によってFALSEの前の数字を変えています。 これで表示させたいシートのA2セルに番号を入れることでそれぞれのデータが表示させられています。 そこでいくつか質問です。 □住所が長すぎて表示させたいシートのセルに収まりきらない場合、全て見れるようにするにはどうすれば良いですか? □改行されているデータも表示先のセルが1行分だと見れないのでしょうか? □元データの文字色や背景色は表示させられないのでしょうか? □表示されてるデータをコピーできますか? □同じシートで複数の参照(番号1と番号2のデータなど)をしたくて最初の「A2」部分(「B2」とかにして番号を入力する場所)を増やしてみましたが、B2とした方には表示されませんでした。同じデータから違う番号のデータも参照するというのは無理なのでしょうか?(同じ番号の項目を複数参照することはできました) わからないことだらけですので、1つでもわかることがあればお教え下さい。 こんな風に記載するんだよと、例文のようなものを頂けると助かります。 よろしくお願いします。

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

  • ベストアンサー
回答No.2

ChatGPTで、 「To あーちゃん エクセルのサンプルがほしいのです。 A列に「番号」、B列に 「会社名」C列に「住所」D列に「電話番号」E列に「URL」 50行ほど、作れますか? おねがい! From へいちゃん」 と、頼めば、サンプルを作ってくれます。 >□住所が長すぎて表示させたいシートのセルに収まりきらない場合、全て見れるようにするにはどうすれば良いですか? 列幅を自動で変えればいいと思います。 1. 調整したい列を選択します。A列からE列のすべての列を調整したい場合、列のヘッダーをクリックして列を選択します。 2. 選択した列がハイライト表示されたら、列の境界線(列の右端)にカーソルを合わせます。カーソルを合わせると、カーソルが変わります。 3. 列の境界線にダブルクリックします。ダブルクリックをすると、選択した列の内容に合わせて列幅が調整されます。 >改行されているデータも表示先のセルが1行分だと見れないのでしょうか? セル内で改行されているのなら、逆にそのセル内改行は無視されます。添付画像を見てください。番号8 の住所はセル内で改行しています。 >元データの文字色や背景色は表示させられないのでしょうか? 普通は、反映されません。添付画像参照 VBAを、使えば可能かと思いますが、背景や文字色がどのようにして付加されたのか、そのあたりから始める必要があるかと思います。 >表示されてるデータをコピーできますか? コピーできますが、貼りつけるとき、どうするか決めると思います。 形式を選択して貼り付けで 値 とか 数式 とかのみを貼り付けたりできます。 >同じシートで複数の参照(番号1と番号2のデータなど)をしたくて最初の「A2」部分(「B2」とかにして番号を入力する場所)を増やしてみましたが、B2とした方には表示されませんでした。同じデータから違う番号のデータも参照するというのは無理なのでしょうか?(同じ番号の項目を複数参照することはできました) 添付画像を参照してください。 VLOOKUP では、ありませんが、 INDEX、MATCH で、数式を作っています。 Sheet3 では、B2 に =INDEX(リスト!$A:$E,MATCH(B$1,リスト!$A:$A,0),MATCH($A2,リスト!$A$1:$E$1,0)) を、入力して、B5まで、コピペ B2:B5までを、B7に、コピペ Sheet4では、 B2の =INDEX(リスト!$A:$E,MATCH($A2,リスト!$A:$A,0),MATCH(B$1,リスト!$A$1:$E$1,0)) を、下に必要な分だけオートフィルで複写します。 3. 列の境界線にダブルクリックします。ダブルクリックをすると、選択した列の内容に合わせて列幅が調整されます。

その他の回答 (1)

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

=VLOOKUP(A2,リスト!,A2:E50,2,FALSE) のリスト!,A2:E50の部分はリスト!,$A$2:$E$50にして式を複写して使ってください。 >1行分だと見れないのでしょうか その列の表示形式で、ホームーセルの書式設定₋ー配置ー折り返して全体を表示する、にしてみてどうかな。その行の行高は大きくなるが、仕方がない。 ーーー VLOOKUP関数は、エクセル関数で一番人気の関数だし(単行本さえある)、表示形式のことも、まず出くわすこと。 この際エクセル全般について基礎を勉強するべきでしょう。

関連するQ&A

  • VLOOKUPの複数参照先

    こんばんは。 エクセルのVLOOKUPでの質問があります。 よろしくお願いします。 1つのbookの中にA,B,C,D...とシートがあります。 Aのシートにて、VLOOKUPを使ってデータの参照をしたいのですが、 B,C,D・・の複数のシートを参照先にしたいのですが、 可能なのでしょうか。 検索先の文字列に応じて検索シート先を変えられれば・・と 思っています。 もう一つ、参照先に目的の値がなかった場合、#N/Aが表示されるのですが、これを1などの数字にすることはできないでしょうか。 お願い致します。

  • エクセルのVLOOKUPの複数参照について

    エクセルのVLOOKUPの複数参照について シート2(kokunai)に A列 B列 1000 シャープ 1010 ソニー 3050 パナソニック とあります。 シート3(yunyuu)に A列 B列 2000 IBM 2001 HP とあります。 シート1のC列に打ち込んだ数字を元にD列にメーカー名を表示したいのです。 D列に IF(C1="","",IF(ISERROR(VLOOKUP(C1,kokunai,1,0))="FALSE",VLOOKUP(C1,kokunai,2,0),VLOOKUP(C1,yunyuu,2,0))) と数式を打ちましたが、エラーが帰って来ます。 どうすれば良いでしょうか?

  • 複数のシートに跨ってVLOOKUPするには?

    複数のシートに跨っているデータをVLOOKUPで参照しようとしています。 1つめのシートには コード番号 シート名 の2つのカラムがあり、コード番号ごとに どのシートを参照すればよいかわかるようになっています。 参照されるほうのシートには コード番号 値 の2つのカラムがあります。 このシートが数十存在しますが、1つのシートにまとめることは出来ません。 1つ目のシート上で、 =VLOOKUP(A1,CONCATENATE(B1,"!A:B"),2,false) などと試してみたのですが、うまくいかないようです。 何か良い方法はないでしょうか。

  • 【エクセル2000】郵便番号を入力すると住所を表示するようにしたい(過去質問確認済)

    エクセル2000で郵便番号を入力すると住所を表示するようにしたいと考えています。 表示方法と現在の関数は次の通りです。 【入力シート】 A列:郵便番号入力セル B列:住所 全体(=C列&D列&E列) C列:住所 都道府県 (=VLOOKUP(A列,'データシート'!$A:$D,2,FALSE) D列:住所 市町村 (=VLOOKUP(A列,'データシート'!$A:$D,3,FALSE) E列:住所 番地以下 (=VLOOKUP(A列,'データシート'!$A:$D,4,FALSE) 【データシート】 A列:郵便番号 B列:住所 都道府県 C列:住所 市町村 D列:住所 番地以下 表示方法はこののやり方で問題がないのですが、 全国住所データが約12万件以上あるため、エクセルの列に入りきりません。 過去の質問を確認しましたが、希望の回答はありませんでした。 どうにかして検索データの量を12万件以上にすることは出来ませんか? シートを複数に分けるとか、VLOOKUP関数の検索列を複数に分けるなどでも結構です。 宜しくお願いします。

  • VLOOKUPの検索値の集計について

    複数シートのデータをVLOOKUPを使って、sheet1(B2~B50)に検索表示させ、更にその値を縦集計し、sheet1(B1)に表示させたいのですが、検索値が文字列のため集計ができません。 VLOOKUPの式に、文字列を数値に変換するように組み込む方法があれば教えてください。 (元データの表示形式は「標準」になっております。) sheet1(B2~B50)には、現在このような式を入れています↓ =IF(COUNTIF(sheet2!$A$2:$E$50,sheet1A!$2),VLOOKUP(sheet1!$A2,sheet2!$A$2:$E$50,2,FALSE)*1,"")&IF(COUNTIF(sheet3!$A$2:$E$50,sheet1!$A2),VLOOKUP(sheet1!$A2,sheet3!$A$2:$E$10,2,FALSE)*1,"")

  • VLOOKUP関数 正しい値が返されない

    sheet1にデータリストを入力、sheet2のA1にコード番号を入力し以下の表にSheet1の対象データを参照するというところ(VLOOKUP関数のみ)まではよかったのですが、元データに空欄の時は「データなし」と表示過去の質問を参照して下のような式に変更しました。 =IF(ISERROR(VLOOKUP($A$1,範囲,列番号,"")),”データなし”,(VLOOKUP($A$1,範囲,列番号,FALSE))) はじめは正しく表示はされたのですが、A1に違う値を入力し直しても値が変化しません。 エラー表示はでませんが、数式がどこか間違っているのでしょうか。 どなたかお知恵をお貸しください。

  • Vlookup複数検索

    sheet1のセルA列にB列とC列の値が当てはまった値を表示したいのですが。 -Sheet1- A    B    C P1   ピンク   大 P2   ピンク   小 範囲はSheet2のA列からC列です。 -Sheet2- A   B   C P1  ピンク  大 P2  ピンク  小 B1  ブルー  大 B2  ブルー  小 例えば、=Vlookup(A1,'sheet2!A:C,2,false) と Vlookup(A2,'sheet2!A:C,3,false) を合わせたい。 上手く説明出来ていませんが、宜しくお願い致します。

  • VLOOKUPで他のシートを参照する場合

    シートが(1)「値表示」と(2)「データ」の2種類があります。 (2)にはB1:D4、B5:D8、B9:D12というように、セル12個分にそれぞれ独立したデータ表があり、このデータが全部で10個あります。 そして、このデータから任意の値を(1)「値表示」シートに表示したいので、(1)のセルA1に「=VLOOKUP(A2,データ!,B1:D4,2,FALSE)という式を入れます。 これで、(1)のA1(2)のシートのデータ表から任意の値が表示されるのですが、このA1に入力した式をコピーして、A10までそれぞれの表に対応したVLOOKUPの数式を入れたいのですが、普通にコピーするとA2以降に入力される式はデータの参照範囲がA1の範囲から1セル分だけずれたB2:D5となっています。A2が参照する範囲は本来はB5:D8にしたいので、一つずつデータの参照範囲を修正しないとならないのですが、このような場合は、やはり一つずつ修正するしか方法がないのでしょうか。 もっと、素早く参照先を変更できる方法がありましたら教えてください。

  • VLOOKUPでエラー表示と0表示を無くしたい

    VLOOKUPで下の条件にあった数式を作りたいのですが、うまくいきません。 条件は (1)参照先のセルが数値のため0が表示されるが、0と空白は区別したいので、戻り値が空白の場合は0を表示させない。 (2)参照元のシートには参照先には無いコードがあるので、エラー(#N/A)が出てしまうがエラーも表示させない。 作ってみた数式は =IF(OR(VLOOKUP(B1,入力!$B$1:$C$6,2,FALSE)="",ISERROR(VLOOKUP(B1,入力!$B$1:$C$6,2,FALSE))),"",VLOOKUP(B1,入力!$B$1:$C$6,2,FALSE)) です。 戻り値が空白、またはエラーの時に参照先のセルが空白になるように作ったつもりですが、どうしてもエラー(#N/A)が出てしまいます。 どなたかアドバイスいただければ嬉しいです。 よろしくお願いいたします。

  • VLOOKUPで

    Excel2000を使っています。 Sheet1のB列に=IF(ISBLANK(A1),"",VLOOKUP(A1,Sheet2!A1:C100,2,0)) Sheet1のC列に=IF(ISBLANK(A1),"",VLOOKUP(A1,Sheet2!A1:C100,3,0))を入れてあります。 Sheet2のA列にはコード番号、B列には氏名、C列には住所が入っています。 Sheet1のA列に番号を入力すると、B,C列に氏名、住所が表示される表を作りましたが、Sheet2にデータを追加したら番号を入力しても、追加したメンバーについては、エラー表示(#N/A)が出てしまいます。 コード番号は頭にゼロが付くので、Sheet1のA列は文字列、Sheet2はすべて文字列にしてあります。 最初はうまくいってたのですが、後から追加した分だけがエラーになります。他のリストからデータをコピーし、値のみを貼り付けてだめだったので、手入力してみたのですがやはりだめでした。検索範囲を超えていることは絶対にありません。 どうしてもわからないので、質問させていただきます。 心当たりございましたらよろしくお願いいたします。

専門家に質問してみよう