Excel独習者です。
次の3つのシートがあります。
「入力窓口」「M1組」「M2組」「M3組」
シート「M1組」「M2組」「M3組」には各クラスの生徒の出席番号(B列)と氏名(C列)が名票としてあります。
シート「入力窓口」のcells(C,6)にクラス名を入力します。
シート「入力窓口」のcells(H,7)に出席番号を入力するとcells(I,7)に該当クラスの該当番号の氏名が
表示されるようにcells(I,7)に次の式を入力しましたがエラー表示でうまくいきません。
=IF(H7="","",IF(C6="M11",VLOOKUP(H7,'M11'!$B$4:$C$11,2,IF(C6="M12",VLOOKUP(H7,'M12'!$B$4:$C$11,2,
IF(C6="M13",VLOOKUP(H7,'M13'!$B$4:$C$11,2,)))))))
どのような式を入力すべきかご助言いただけたら幸いです。
なお、OSはVISTA、Excelは2007です。
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
こんばんは!
一例です。
M1~M3組のSheetそれぞれの範囲を名前定義します。
当方使用のExcel2003での場合になりますが、
メニュー → 挿入 → 名前 → 定義
アルファベットや数値を名前欄に当てはめられないと思いますので
アンダーバーを付けて
_M1 のようにそれぞれのSheet別にVLOOKUPの範囲を名前定義します。
そして、↓の画像のI7セルに
=IF(OR(C7="",H7=""),"",VLOOKUP(H7,INDIRECT("_"&C7,0),2,0))
という数式を入れています。
これでクラス名欄と出席番号欄にそれぞれ入力すれば
希望の表示ができると思います。
お使いのExcel2007にも同様の操作方法ができるはずですので
お試しください。
以上、参考になれば幸いです。m(__)m
tom04様
画像までついた丁寧なアドバイスを頂いて感謝しております。
Excel2007にも「数式」というところに「名前の定義」がありました。
「範囲」で「M1」、「参照範囲」でvlookupの選択範囲、「名前」で
「_M1」とすればいいのかと思ってやってみましたが「参照範囲」をはじめ間違って別のところを指定して「_M1」と名前をつけてしまいました。正しい範囲に「_M1」をつけようとすると、「もう使われているのでその名前は使えない」とメッセージがでます。
書いてくださった式をみると、「_○○」という形が必要のように思えます。
無知のためせっかく教えてくださったことがなかなか使えない状態ですが、もうすこしやってみます。
とりあえず、御礼の言葉を述べさせていただきます。
No.5
- 回答日時:
質問の書き方が適当でなく判りにくい。
シートの簡単な実例を挙げて何をしたいのか説明すること。
どんな検索表があるのか書かないとよくわからない。
cells(C,6)はVBAで似たような書き方をするので、ここでは不適。
VBAのCellsなら順序が逆だ。
セルI7などとすべき。
>出席番号
生徒に付けた生徒番号ではないのか。
>名票としてあります
何の意味?クラスでそういう語句を使うの?業界用語は使わないで。
>複数条件を満たすVLOOKUP関数
これと本文の関係が良くわからない。
2列にわたる条件で、VLOOKUP関数を使えないはず。
だから2列の値を各行で結合した列を作り、そこを検索表として使うのだが、そんな質問ですか。そのとき単純に2列を&で結合してはダメなのはわかるかな。
imogasi様
いろいろ不備な点をご指摘いただき感謝いたします。
ご指摘いただいたすべての点がおっしゃる通りだと納得しました。
>2列にわたる条件で、VLOOKUP関数を使えないはず。
だから2列の値を各行で結合した列を作り、そこを検索表として使うのだが、そんな質問ですか。
複数ののシートを統合するシート上でVLOOKUP関数を適用し、それら複数のシート(すべてのシートは同じ形式の表でクラスごとの生徒の番号と氏名が書いてあります)から一つのシートを選んで該当クラスの入力した生徒番号の氏名を表示させたいというのが私の意図でしたが書き方が分かりにくく、大変ご迷惑をおかけしました。
これも十分わかりにくいと思いますが、お礼には画像が添付できないのですみません。
統合シート上には該当クラス名を入力するセルがあります。
該当クラス名を入力した後で、同じ統合シート上の生徒名簿の表に生徒番号を入れると該当クラスの生徒氏名が表示されるようにしたいのです。
このようなことができるのでしょうか。
何回も申し訳ありませんがアドバイスをいただけたら大変助かります。
よろしくお願いいたします。
No.4
- 回答日時:
No.3です!
たびたびごめんなさい。
名前定義の変更ですが、簡単にできると思います。
Excel2007の場合はどのような画面が出るか判りませんが、
2003ですとメニュー → 挿入 → 名前 → 定義
で↓の画像のような画面が出ますので
名前定義したものが並んでいるところでクリックすると
その名前定義のものが選択されますので、「削除」を選べば
間違って範囲指定したものは解除できます。
Excel2007も同じような感じでできないでしょうか?
どうも何度も失礼しました。m(__)m
tom04様
再度のていねいなご回答感謝いたします。
添付してくださった画像とExcel2007は若干異なりますが、やってみます。ありがとうございました。
No.2
- 回答日時:
シート名は 「M1組」「M2組」「M3組」?
「M1」「M2」「M3」?
シート名が「M1組」「M2組」「M3組」で
C6セルに「M1組」「M2組」「M3組」とシート名を入力するのであれば
INDIRECT関数を使って
=VLOOKUP(C8,INDIRECT(H7&"!A:B"),2,FALSE)
M1とか組だけを省略して入力するのであれば
=VLOOKUP(C8,INDIRECT(H7&"組!A:B"),2,FALSE)
hallo-2007様
ご回答感謝いたします。
シート名は「M1」等で、組はついていません。
失礼いたしました。INDIRECT関数についてすこし勉強してみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBA VLOOKUPを使ってのカウント作業 2 2023/02/19 09:03
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) ある数値に対して、値を返す数式についてです 2 2022/09/13 22:06
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IFとIFS関数
-
Excelを無料で使うには? パソ...
-
セルの数を求めたい
-
エクセルの数式バーのフォント...
-
Excelの表示についての質問
-
再質問です。マクロの修正箇所...
-
データチェックを行うエクセル...
-
Excelに詳しい方! B列が「日...
-
西暦や和暦の表示をyyyymmdd表...
-
Excelで50個のセルに同じ文字を...
-
Excelの数式について教えてくだ...
-
Excel VBAで全ての矢印を赤色に...
-
エクセル関数を使って
-
祝日と土曜、日曜の合計をカウ...
-
xlsxファイルを保存する際にPDF...
-
Excelについて
-
エクセルVBA、別ブックへ転記す...
-
エクセルで「ページレイアウト...
-
2列に入っているデータを1列...
-
【ExcelVBA】名前を付けて保存→...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報