[[20061002110610]] 『入力規則のドロップダウンで指定した項目を数字で』(もっち) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『入力規則のドロップダウンで指定した項目を数字で入力したい』(もっち)

お世話になっております。

入力規則のドロップダウンに
例えば
A:りんご
B:ばなな
C:オレンジ

と表示させ、A:りんごを選択した場合
セルには「A」だけを入力させたい場合は
どのようにすれば宜しいでしょうか?


 回答がつかないようなので、自分の勉強のため考えて見ました。
 まず Sheet2 に
 以下のようなデータをつくり、
 	A	B	C
 1	A	りんご	A:りんご
 2	B	ばなな	B:ばなな
 3	C	オレンジ	C:オレンジ

 ※C列は =A1&":"&B1 のように式で入力。

 ドロップダウンのリストがあるシートをSheet1で
 セルをA1とすると

 Sheet1のA1には 入力規則の リストで 元の値に
 =INDIRECT("Sheet2!C1:C3")
 といれ、エラーメッセージタブの 不正なデータが入力されたら・・・という
 チェックボックスをOFFにしておきます。

 Sheet1に以下のようなマクロをはりつけます
 Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "A1" Then
        Dim c As Range
        Set c = Worksheets("Sheet2").Columns("A:A").Find(Target.Value, LookIn:=xlValues, LookAt:=xlWhole)
        If c Is Nothing Then
            Set c = Worksheets("Sheet2").Columns("C:C").Find(Target.Value, LookIn:=xlValues, LookAt:=xlWhole)
            If c Is Nothing Then
                MsgBox "このデータは不正です"
                Application.EnableEvents = False
                Application.Undo
                Application.EnableEvents = True
            End If
        Else
            Application.EnableEvents = False
            Target.Value = c.Offset(0, 2)
            Application.EnableEvents = True
        End If
    End If
 End Sub

 勉強のためにつくったので、おかしい部分やもっとよい方法があるかもしれません。
 (ぐみ) 


 数字を入力するものでしたら、このようなものもあります。↓           (#REF!MAN)
[[20040319230842]] 『プルダウンから』(Kenny)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.