Excel でデータ検証の選択を置き換える

Excel でデータ検証の選択を置き換える

アイテムのフルネームのリストと、その横にアイテムの短縮名のリストがあります。

長い名前が表示され、選択時には短い名前のみが表示されるドロップダウン リストを作成したいと思います。

それをする方法はありますか?

答え1

これには VBA が必要です。次のシナリオを検討してください。

ここに画像の説明を入力してください

列 D のデータ検証には、列 A の LongList 値が使用されます。

ワークシート変更イベントは列 D に作用し、Vlookup を実行して短い値を取得し、現在のセルの値を置き換えます。コードは次のとおりです。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim short As String
    If Not Intersect(Target, Range("D:D")) Is Nothing Then
        short = Application.VLookup(Target.Value, Range("A1:B4"), 2, False)
        Application.EnableEvents = False
        Target = short
        Application.EnableEvents = True
    End If
End Sub

シートタブを右クリックして、「コードの表示」を選択します。上記のコードをコード ウィンドウに貼り付けます。ワークブックを反映するようにセル参照を調整します。

関連情報