[[20170802115937]] 『VBA コンボボックスでリストから選択したものをメx(なつ) ページの最後に飛ぶ

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

 

『VBA コンボボックスでリストから選択したものをテキストボックスに抽出』(なつ)

VBAのフォームで日報入力しようと作成中です。

現在つまづいているのが、社員番号をコンボボックスから選択すると、隣のテキストボックスに氏名が入るようにしたいのです。

ユーザーフォームにはまずテキストボックス37に今日の日付がはいるようにし、コンボボックス24にリストシートのIの列の社員番号とJの列の氏名が選択できるようにしました。

Private Sub UserForm_Initialize()

    TextBox37.Value = Date

  With ComboBox24
            .ColumnCount = 2
            .ColumnWidths = "40"
            .RowSource = "リスト!I2:J18"
        End With

End Sub

そのごコンボボックスを選択し、Exitしたあとに、テキストボックス38に氏名が入るようにしたいのですが、マクロ実行しても氏名が入らないです。

Private Sub ComboBox24_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim ret As Variant
With ComboBox24

      ret = Application.VLookup(Me.ComboBox24.ListIndex + 1, Worksheets("リスト").Range("I2:J18"), 2, 0)
   If Not IsError(ret) Then
      TextBox38.Value = ret
   End If
   End With
End Sub

retの変数が悪いとおもうのですが、どのように修正したらよいでしょうか?

< 使用 Excel:Excel2007、使用 OS:Windows8 >


 私はChangeイベントの方を使用しますが...

     Me.TextBox38.Value = ""
     With Me.ComboBox24
         If .ListIndex > -1 Then
             Me.TextBox38.Value = .List(.ListIndex, 1)
         End If
     End With

(seiya) 2017/08/02(水) 12:18


seiyaさま

ありがとうございます。

Changeイベントにして作成したらできました。

いただいたものを入力したらできました。

もっと勉強します。ありがとうございます。
(なつ) 2017/08/02(水) 12:56


コメント返信:

[ 一覧(最新更新順) ]


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