Excel VBA質問箱 IV

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

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


41359 / 76732 ←次へ | 前へ→

【40453】Re:1行ずつ表示させセルに値を入れる
発言  ichinose  - 06/7/14(金) 7:59 -

引用なし
パスワード
   ▼RIKE さん:
おはようございます。


>初心者の為よろしくお願いします。
>ユーザーフォームにリストボックスとコマンドボタンがあります。
これは、了解です。


>リストボックスに1行ずつ列AからJのデータを表示し、
>コマンドボタンをクリックするとその行のG列に日付が入り、
>リストボックスに次の行を表示させるループを作りたいのですが、
リストボックスに一行しか表示させないのですか?
だとすると、リストボックスを使うのが無駄なような気がしますが・・・。


>どのような方法がありますか?
>データ
>
> A  B ・・・G・・ J
>1名前 住所 ・・ 日付 ・番号
>2HIRO 新宿 ・・   ・ 62
>3JIRO さい ・・   ・ 151
>4TARO いわ ・・   ・ 180
ユーザーフォーム(Userform1)に
リストボックス(Listbox1)とコマンドボタン(Commandbutton1)を配置します。
上記のデータがSheet1という名前のシート上にあるとします。

標準モジュールに
'====================================
sub main()
  userform1.show
end sub


Userform1のモジュールに

'================================================================
Private Sub CommandButton1_Click()
  With ListBox1
    Worksheets("sheet1").Range("a2").Offset(.ListIndex, 6).Value = Date
    .List(.ListIndex, 6) = Date
    End With
End Sub
'================================================================
Private Sub UserForm_Initialize()
  With Worksheets("sheet1")
    ListBox1.ColumnCount = 10
    ListBox1.List() = .Range("a2", .Cells(.Rows.Count, "a").End(xlUp)).Resize(, 10).Value
    End With
End Sub


として、mainを実行してみてください。

・Userform1が表示されます。

・Listbox1にSheet1の内容が表示されます。

・そのListbox1のデータの中からひとつ選択して、コマンドボタン
 (Commandbutton1)をクリックしてください。

・選択された行に相当するSheet1内のデータのG列に今日の日付が入ります。

・Listbox1にも日付は反映されます。

・Listbox1の選択行を代えて同様の処理を繰り返すことが出来ます。


リストボックスを使うなら、こういうことでしょうか?

1 hits

【40435】1行ずつ表示させセルに値を入れる RIKE 06/7/13(木) 17:12 お礼
【40453】Re:1行ずつ表示させセルに値を入れる ichinose 06/7/14(金) 7:59 発言
【40473】1行ずつ表示させセルに値を入れる RIKE 06/7/14(金) 13:54 質問
【40485】Re:1行ずつ表示させセルに値を入れる ichinose 06/7/14(金) 18:00 発言
【40671】Re:1行ずつ表示させセルに値を入れる RIKE 06/7/20(木) 11:44 お礼

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