Excel VBA質問箱 IV

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

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


4964 / 13645 ツリー ←次へ | 前へ→

【53341】リストボックスからデータを指定セルに転送 事始 08/1/4(金) 12:13 質問[未読]
【53343】Re:リストボックスからデータを指定セルに... じゅんじゅん 08/1/4(金) 14:37 発言[未読]
【53346】Re:リストボックスからデータを指定セルに... ichinose 08/1/4(金) 15:35 発言[未読]
【53348】Re:リストボックスからデータを指定セルに... じゅんじゅん 08/1/4(金) 16:15 発言[未読]
【53353】Re:リストボックスからデータを指定セルに... 事始 08/1/5(土) 8:07 お礼[未読]

【53341】リストボックスからデータを指定セルに転...
質問  事始  - 08/1/4(金) 12:13 -

引用なし
パスワード
   今年初めての質問で恐縮ですが・・・
お忙しいところ申し訳けございません。

リストボックスボックスに4列表示しています。
リストビックスの一列をチェック(選択)した時点で
その4列をシートのD4、E4、F4、G4のそれぞれを表示させたいのですが
その方法を教えていただけませんでしょうか。

Private Sub userform_initialize()
Dim myVal As Variant
  myVal = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)).Resize(, 4).Value
  With UserForm1
     .ListBox1.ColumnCount = 4
     .ListBox1.ColumnWidths = "40;30;60;40"
     .ListBox1.List = myVal
  End With
End Sub

Private Sub listBox1_Change()
 With ActiveSheet
  .Cells(4, 8).Value = ListBox1.Value
  .Cells(4, 9).Value = ListBox1.Value'←リストボックス2列目
  .Cells(4, 10).Value = ListBox1.Value'←リストボックス3列目
  .Cells(4, 11).Value = ListBox1.Value'←リストボックス4列目
 End With                 'を表示させる方法?
End Sub

【53343】Re:リストボックスからデータを指定セル...
発言  じゅんじゅん  - 08/1/4(金) 14:37 -

引用なし
パスワード
   ▼事始 さん:
>今年初めての質問で恐縮ですが・・・
>お忙しいところ申し訳けございません。
>
>リストボックスボックスに4列表示しています。
>リストビックスの一列をチェック(選択)した時点で
>その4列をシートのD4、E4、F4、G4のそれぞれを表示させたいのですが
>その方法を教えていただけませんでしょうか。
>
>Private Sub listBox1_Change()
> With ActiveSheet
>  .Cells(4, 8).Value = ListBox1.Value
>  .Cells(4, 9).Value = ListBox1.Value'←リストボックス2列目
>  .Cells(4, 10).Value = ListBox1.Value'←リストボックス3列目
>  .Cells(4, 11).Value = ListBox1.Value'←リストボックス4列目
> End With                 'を表示させる方法?
>End Sub

一応こんな方法で出来ましたが、他にも方法があるのかも?

Private Sub listBox1_Change()
 Dim i As Integer
 For i = 0 To 3
   With ActiveSheet
      .Cells(4, 8).Offset(, i).Value = ListBox1.List(ListBox1.ListIndex, i)
   End With
 Next
End Sub
詳しくなくてすいません。

【53346】Re:リストボックスからデータを指定セル...
発言  ichinose  - 08/1/4(金) 15:35 -

引用なし
パスワード
   こんにちは。


>一応こんな方法で出来ましたが、他にも方法があるのかも?
>
>Private Sub listBox1_Change()
> Dim i As Integer
> For i = 0 To 3
>   With ActiveSheet
>      .Cells(4, 8).Offset(, i).Value = ListBox1.List(ListBox1.ListIndex, i)
>   End With
> Next
>End Sub

別解ということで

Private Sub listBox1_Change()
 With ListBox1
   Range(Cells(4, 8), Cells(4, 11)).Value = _
      WorksheetFunction.Index(.List(), .ListIndex + 1, 0)
   End With             
end sub

【53348】Re:リストボックスからデータを指定セル...
発言  じゅんじゅん  - 08/1/4(金) 16:15 -

引用なし
パスワード
   ▼ichinose さん:
>こんにちは。
>
>
>>一応こんな方法で出来ましたが、他にも方法があるのかも?
>>
>>Private Sub listBox1_Change()
>> Dim i As Integer
>> For i = 0 To 3
>>   With ActiveSheet
>>      .Cells(4, 8).Offset(, i).Value = ListBox1.List(ListBox1.ListIndex, i)
>>   End With
>> Next
>>End Sub
>
>別解ということで
>
>Private Sub listBox1_Change()
> With ListBox1
>   Range(Cells(4, 8), Cells(4, 11)).Value = _
>      WorksheetFunction.Index(.List(), .ListIndex + 1, 0)
>   End With             
>end sub

ichinose さん、勉強になりました。

【53353】Re:リストボックスからデータを指定セル...
お礼  事始  - 08/1/5(土) 8:07 -

引用なし
パスワード
   ▼じゅんじゅん さん:
▼ichinose さん:
新年早々有難うございました。
大変勉強になりました。

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