• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAでVLOOKUP自動参照表示)

エクセルVBAでVLOOKUP自動参照表示

このQ&Aのポイント
  • エクセルVBAを使用して、VLOOKUP関数を使って自動的に参照して表示させる方法について教えてください。
  • 作業者Aと作業者Bの計画をエクセルで管理しています。作業者ごとに入力範囲が異なり、入力した品物に対応する付属品を自動的に表示させたいです。
  • エクセル2013を使用しており、作業者Aの本日の計画はB3:B15、作業者Bの本日の計画はB17:B29というようになっています。入力した品物に応じてVLOOKUP関数を使って付属品を表示させる方法を教えてください。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.1

選択入力した下のセルに品物に対応するテーブルというシート名のB列のデータをVlookupで取得して表示するということでしょうか。 以下の動作でいかがでしょう。 Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo mExit Application.EnableEvents = False If Intersect(Target, Range("B3:B15,G3:G15,B17:B29,G17:G29")) Is Nothing Then Application.EnableEvents = True Exit Sub Else Target.Offset(1, 0).Value = Application.WorksheetFunction.VLookup(Target.Value, Sheets("テーブル").Range("A:B"), 2, False) End If Application.EnableEvents = True Exit Sub mExit: Application.EnableEvents = True End Sub

hinoki24
質問者

お礼

思い通りに動作しました。 最初、シート名とかを実情に合わせて変更せずにやったり色々あって、エラーになってしまってその後まったく動かなくなってしまいました。 実情に合わせ修正をかけ、標準モジュールにApplication.EnableEvents = Trueとしてやり直したら思い通りの動きになっていました。 どうもありがとうございました。

関連するQ&A