|
CEL366.VLOOKUP関数の範囲について
Q:(質問者:栃木noripitiさん) 前Excel基本塾に載っていた「CEL173.商品名から商品コードナンバーを表示」に付け加えての質問なのですが・・ VLOOKUP関数の範囲で複数のシートの範囲を指定する事は可能でしょうか? 商品マスタ一覧『Sheet3』『Sheet2』を検索の範囲とし『Sheet1』に商品名入力するとコードが表示されるようにしたいのです。
A B (Sheet3)
┌───┬────┐
1│商品名│CODE│
├───┼────┤
2│A商品│1001│
├───┼────┤
3│B商品│1002│
└───┴────┘
A B (Sheet2)
┌───┬────┐
1│商品名│CODE│
├───┼────┤
2│C商品│1003│
├───┼────┤
3│D商品│1004│
└───┴────┘
A B (Sheet1)
┌───┬────┐
1│商品名│CODE│
├───┼────┤
2│D商品│1004│
├───┼────┤
3│A商品│1001│
├───┼────┤
4│ │ │
├───┼────┤
5│ │ │
└───┴────┘ ???????????????????????
A: 『VLOOKUP関数の範囲で複数のシートの範囲を指定する事は可能でしょうか?』 不可能と思います。
しかし、ある場合に、Sheet1の表を、また、他の場合に、Sheet2の表を参照することは、可能です。
条件判断の対象になる商品名は、必ず一意のもとします。 Sheet1の【セルB2】に式 =IF(A2="","",IF(COUNTIF(Sheet2!$A$2:$B$4,A2)=1 ,VLOOKUP(A2,Sheet2!$A$2:$B$4,2,0),VLOOKUP(A2,Sheet3!$A$2:$B$4,2,0))) を入力します。 式は、1行です。 A2="","",ここまでは、【セルA2】に商品名が入力されていなければ、なにも表示しない。 (ここの部分は、必ず、この関数を使わなければならないものではありません。) 次のCOUNTIF関数は、指定された範囲に含まれるセルのうち、検索条件に一致するセルの個数を返します。 【セルA2】の商品名と同じもが何個あるかを、Sheet2から、検索します。 ある場合はこの場合必ず1で、無い場合は0となります。 (ここの部分は、必ず、この関数を使わなければならないものではありません。) あれば、Sheet2から、コードを探し出し、なければ、Sheet3から検索します。 商品名を間違えればエラーになります。 IF関数と、VLOOKUPの関数は、最近良く出ていますので、そちらの方を、ご参照ください。
VLOOKUP関数の第四引数の、0は、FALSEと同じ結果になります。 FALSEと覚えられた方がいいかもしれませんね。 [質問一覧]/[HOME]
CEL367.表をコピーして使うと列幅が変わる
Q:(質問者:千葉県hiroさん) Windows98 エクセルの表を毎回コピーして、次の予定表つくりに使っているのですが、列幅がコピーすると短い言葉の幅に戻ってしまい、またいちいち直して使っているのですが、何かよい方法があったら教えてください。 例えば 朝打合せ 朝打 合せ 行事 →行事
???????????????????????
A: こんにちは、千葉県hiroさん。
同じシート内でコピーする場合は、列の英字(ABC)の部分をクリックして列全体をコピーして、貼り付けたい列の英字に貼り付けて下さい。 行の場合も同様にコピー出来ます。
別のシートにコピーする場合は、左上の列と行の交差している部分をクリックしてコピーし、別シートの同じ部分に貼り付けて下さい。
また、シートを別ブックにコピーしたり末尾にコピーするには、編集→シートの移動またはコピーを使用して下さい。 [質問一覧]/[HOME]
CEL368.リンクしたい!
Q:(質問者:愛知県mikaさん) Windows98 エクセル2000を会社で使っています。 リンクさせる方法を知らないので、同じデータを2回入力しています。 シート内や同じファイル内のシート同士でセルをリンクさせる方法ってありますか?
???????????????????????
A: 兵庫yuhkiです。ありますよ。 同じデータを入力したいセルに =(シート名)!(セル番号) という式を入力します。
例えば、SHEET2のA1セルにSHEET1のB1セルの値を入力したいのであれば、 =SHEET1!B2 とします。 入力しなくとも、SHEET2のA1セルに「=」を入力して、マウスでSHEET1のB2セルをクリックしてあげれば、上記の式が自動的に設定されます。
頑張ってくださいね。 ではでは。 [質問一覧]/[HOME]
CEL369.一部分だけ縦書きにするには?
Q:(質問者:神奈川県ma-nekoさん) Windows98
表を作成していると、一部分だけ縦書きにしたいときがあります。 一行づつ文字を入力するのは大変なので、良い方法を教えてください!
???????????????????????
A: ma-nekoさんこんにちわ、はじめまして。 愛知県のmitaniというものです。 一部分・・一つのセルを縦書きにすることは出来ます。
縦書きにしたいセルを選択後、右クリックをし、「セルの書式設定(F)」を選択します。
その後で、「配置」と書いてあるタブをクリックします。 すると、右の方に「方向」という項目があり、その下に縦書きで「文字列」と書いてある四角の所をクリックし、OKを押します。 これで選択したセル内に書いた文字がが縦書きになるです。 ちなみに、縦書きで「文字列」と書いてある四角の右にある四角を色々クリックすると「文字列」の文字が色んな角度を向きますよね?
角度を選んでOKを押すと、選択セル内の文字がその角度で表示されます。 実用にかなうかどうかは置いておいて、色々と試してみるのも面白いでしょう。
ご希望に添えればありがたいです。 それでは失礼します。 [質問一覧]/[HOME]
CEL370.セル複写時の行幅・列幅
Q:(質問者:愛知Tigerさん) エクセルで、複数のセルを範囲指定して複写する際に、”カメラ”機能を利用せず、もとの行幅、列幅も複写先に反映させるにはどうすればよいのでしょうか? 特にシート全体を複写したい場合で、シート左上クリックで全選択してから新規シートに複写する際に、もとの行・列幅を反映させる方法があれば教えて下さい。 よろしくお願いします。
???????????????????????
A: Tigerさん今日は。兵庫のhhirochannです。 シート全体を複写したい場合は、コピーしたいシートを開き編集→シートの移動又はコピーを選択し、移動先を指定し、コピーを作成する にチェックを入れてOKしますとシートのコピーが出来ます。
このシートのコピーの場合、元のシートのままとなります。 (行高さ 列幅とも同じ) お試しください。
なお、部分的なセルのコピーの場合は残念ながらコピー先のセルの幅高さが優先されます。 [質問一覧]/[HOME]
|