Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12693 / 13646 ツリー ←次へ | 前へ→

【9155】リストボックスで検索・表示 まゆずみ 03/11/19(水) 17:10 質問
【9161】Re:リストボックスで検索・表示 kein 03/11/19(水) 18:46 回答
【9165】Re:リストボックスで検索・表示 まゆずみ 03/11/19(水) 19:40 お礼

【9155】リストボックスで検索・表示
質問  まゆずみ  - 03/11/19(水) 17:10 -

引用なし
パスワード
   こんにちは!よろしくお願いします。
sheet2に(セルD6)からID番号、名前、時給・・・と(セルO5)まで12列、
行は(セルD6)から(セルC25)まで21行の表があります。
ユーザーフォームにリストボックスを配置し、ID番号、名前を
表示させるようにしました。
同じくユーザーフォームに配置したコマンドボタン1をクリックすると、
リストボックスで選択した人のID番号、名前、時給など、(行D〜O)のセルの値
を、sheet3の(セルM3〜X3)に転記するようにしたいのですが
どうしたらよいのかわからないので、教えて下さい。
どうぞよろしくお願いします。

【9161】Re:リストボックスで検索・表示
回答  kein  - 03/11/19(水) 18:46 -

引用なし
パスワード
   ユーザーフォームのリストボックスは、リストを選択してない状態で ListIndex = -1
一番初めのリストを選択すると、ListIndex = 0 となります。あとは順番に並んで
いるのだから、例えば最初のリストが 6 行目にあるなら、ListIndex + 6 とすれば
選択した項目に対してのシート上の行番号を求められます。なので

Private Sub CommandButton1_Click()
  Dim Lix As Long
 
  Lix = UserForm1.ListBox1.ListIndex
  If Lix = -1 Then Exit Sub
  Lix = Lix + 6
  Sheets("Sheet3").Range("M3:X3").Value = _
  Sheets("Sheet2").Range("D" & Lix & ":O" & Lix).Value
End Sub

ということになりますね。

【9165】Re:リストボックスで検索・表示
お礼  まゆずみ  - 03/11/19(水) 19:40 -

引用なし
パスワード
   keinさん、お返事ありがとうございました。
教えていただいたコードでちゃんと動作するようになりました。
また質問するかもしれないので、その時にはよろしくお願いします

12693 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free