別シート(sheet2)に、Vlookup用マスターを作ってあります。
でsheet1に、セルF1に、=IF(H2="",""Vloouup用マスター!$A$2:$B$14,2,false)というような形で、
H2が空白だったら、空白にして、そうでなかったら、検索して、2列目を、表示ようにしてあります。
Vlookup用マスターの1列めに入っているのは、日本語の項目名で、それを、検索値として、入力すると、2列目の数字を出すようにしてあるのですが、
1列目の項目名が長いので、コピーしています。
同一シートなら、データの入力規則で、プルダウンキーを使ってリストを作る方法もあるのですが、別シートだと、それもできないようなので、
Vloouupのマスターを生かしたまま、もともとのシートに、もっと、簡単に入力できる方法が何かあったら、教えて下さい。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんにちは
名前を使えば別のシートでも入力規則-リストが使えます。
以下のページがご参考になるのでは?
【エクセル技道場】-入力規則-名前定義で、[リスト]で他のシートの範囲を利用
http://www2.odn.ne.jp/excel/waza/validation.html …
参考URL:http://www2.odn.ne.jp/excel/waza/validation.html …
No.3
- 回答日時:
前もって 謝っておきます。
チンプンカンフンの答えでしたら無視して下さい。シート2のVLOOKUP用マスターの検索値を 一度全件コピーしてみては
コピー先は、シート1のH3に貼りつける。
実際に、VLOOKUP検索するキーは、H2のようですので、H2のカーソル
から、右クリックし、「リストから選択(K)」をすれば、H3から下段が、全
て表示されるはずです。(但し、文字タイプだけだと思います)
お節介ですが、himehimeさんは、IF関数とVLOOKUP関数の組み
合わせですが、この場合、H2が空白であれば空白セット 空白でなければ、V
LOOKUPになっていますが、VLOOKUP検索後、一致するものがなけれ
ば、#N/Aエラーになりませんか??
ISERRORをつかえば結構便利ですよ!!!
例.
IF(ISERROR(VLOOKUP(H2,シート2マスター!$A$2:
$B$14,2,false)),’****’,VLOOKUP(H2,シー
ト2マスター!$A$2:$B$14,2,false))と云う具合に
’***’の部分はテキストでも、数式でもいいです 違うパターンのVLOO
KUP関数を入れる事も出来ます。1個目のVLOOKUPで、検索出来なけれ
ば’****’を表示します。
質問に理解していない答えでしたら ゴメンナサイ!!!
No.1
- 回答日時:
「入力規則」という機能は誠に中途半端で困った物です。
マクロを使えば自由自在ですが、本格的に書くのはちょっと....ということですね。
●コンボボックスかリストボックスをsheet1に貼り付ければ良いんじゃないでしょうか。リストボックスでやってみましょう。
○どこにある?
表示->ツールバー->ユーザー設定で「コマンド」タブの分類:フォームを選ぶと、リストボックスが見つかります。これをツールバーにドラッグする。そして「ユーザー設定」を閉じます。
○どうやって貼り付ける?
ツールバーのリストボックスのアイコンをクリックしてから、sheet1上の好きなところにdraggingで長方形を描きます。
○どうやって中身を表示させる?
リストボックスのプロパティ(macならcontrol keyを押しながらリストボックスをclick)の中に「コントロールの書式設定...」がある。これを選んで「コントロール」タブの「範囲:」のところに問題の「sheet2にあるマスターの1列め」を指定します。そして「リンクするセル」の所にどこか適当なセル1個(たとえば$A$1としましょう)を指定します。そして「コントロールの書式設定」を閉じます。
これで、リストボックスの中に「マスターの1列め」の内容が表示されるようになります。
○どうやって使う?
リストボックスの中の行を一つ選択すると、セル$A$1に「選択したのが何行目か」の数値が表示されます。ですからindex関数を使ってsheet2にある「2列目の数字」を(Vlookupは使わないですけど)直にピックアップできます。
●入力したいセルがいっぱいあるときは?
セルH1,H2,......に同様の入力をしたいときは、各セル毎にリストボックスやコンボボックスを用意するのも間が抜けた話ですね。この場合はマクロを使うのが簡単だなあ。
つまり、セル$A$2に一旦欲しい「2列目の数字」を取り出して、次に入力したいセルを選択しておいてボタンを押すだけで、この数字がセルにペーストされるようにする。
○$A$2に「2列目の数字」をとりだすには?
セル$A$2に
=index(Vloouup用マスター!$B$2:$B$14,$A$1)
と入力します。
○マクロを作る。
ツール->visual basic editorを選びます。
挿入->標準モジュールを選びます。
これでModule1(コード)というウインドウが開く。
Sub ppp()
Range("A2").Copy
ActiveSheet.Paste
End Sub
と入力します。
そしてWorksheetへ戻り、このマクロを動かす為のボタンを用意しましょう。
○どこにある?
表示->ツールバー->ユーザー設定で「コマンド」タブの分類:フォームを選ぶと、ボタンが見つかります。これをツールバーにドラッグする。そして「ユーザー設定」を閉じます。
○どうやって貼り付ける?
ツールバーのリストボックスのアイコンをクリックしてから、sheet1上の好きなところにdraggingで長方形を描きます。
○どうやってマクロを起動できるようにする?
ボタンのプロパティの中にある「マクロの登録...」を選択。表示されるリストの中からpppを選んで[OK]。
○どうやって使う?
先ずリストボックスで「マスターの1列め」の文字列を選択します。すると対応する「2列目の数字」がA2に表示されます。
そこで、入力したいセルを選択して、ボタンを押す。これでA2の数字が選択したセルに貼り付けられます。
*他にもいろいろ手はあると思います。使用目的・状況に応じて工夫できると思いますので、補足してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) Excel_マクロ_複数のシートのVLOOKUPで表示された#N/A以外に色付けをしたいです 1 2023/02/16 22:37
- その他(Microsoft Office) エクセルの数式で教えてください。 2 2023/01/12 13:51
- Excel(エクセル) Excelで、別シートの表のステータスに伴った動的な自動転記をしたいです。 2 2023/06/14 15:56
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access レポート印刷するときに...
-
実行時エラー3131 FROM 句の構...
-
Accessのクエリで、replace関数...
-
Vba Userformを前面に出すについて
-
アクセス レポートを開いたとき...
-
Microsoft365にAccessってあり...
-
【Access】Dcount関数の複数条...
-
Access VBA を利用して、フォル...
-
accessデータを指定したExcel、...
-
Access 複数条件検索の設定が上...
-
チェックボックスにチェックが...
-
Accessのスプレッドシートエク...
-
ACCESS VBA でのエラー解決の根...
-
アクセス 削除するレコードを含...
-
アクセス ステップインのやり方
-
access2019をダウンロードして...
-
Accessのフォーム上のテキスト...
-
Accessのリンクテーブルのパス...
-
Accessのテキストボックスの入...
-
Access IF文でテーブルに存在し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access レポート印刷するときに...
-
Access Error3061 パラメータが...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
Accessのリンクテーブルのパス...
-
Access VBA [リモートサーバー...
-
ACCESS VBA でのエラー解決の根...
-
accessデータを指定したExcel、...
-
Accessのスプレッドシートエク...
-
CSVファイルの「0落ち」にVBA
-
【Access】Dcount関数の複数条...
-
Accessのフォーム上のテキスト...
-
Access VBA を利用して、フォル...
-
実行時エラー3131 FROM 句の構...
-
Vba Userformを前面に出すについて
-
Accessでフォームに自動入力し...
-
Accessレポートのチェックボッ...
-
Accessのテキストボックスの入...
-
Access 複数条件検索の設定が上...
-
accessのフォームに設置したボ...
おすすめ情報