|
こんばんは
> A B C D E・・・・・CX
>1 名前 登録番号 登録日 項目1 項目2 項目##
>2 ・ ・ ・ ・ ・ ・
>3 ・ ・ ・ ・ ・ ・
>
>A,B,Cはテキスト、D以降は入力値がある場合に0と1であらわしています。
>A,B,Cはテキストボックスから、D以降はチェックボックスから入力しています。
とのことですので
UserFormに
LISTBOX1とTEXTBOX1から3
CHECKBOC1から100を配置してください。
>入力しています
とのことですから、すでに配置できてると思いますが。
下記のコードを入力して下さい。
リストボックスをクリックして
各項目が表示されるか確認してください。
Private Sub UserForm_Initialize()
Dim LASROW1 As Long
Dim myDRange1 As String
Dim f As Long
With ListBox1
.ColumnCount = 3
.ColumnWidths = "80;80;50"
End With
LASROW1 = Worksheets("Sheet1").Range("A65536").End(xlUp).Row
myDRange1 = "Sheet1!A2:C" & LASROW1
ListBox1.RowSource = myDRange1
If Worksheets("Sheet1").Range("A2").Value = "" Then
ListBox1.RowSource = ""
End If
For f = 1 To 3
Controls("TEXTBOX" & f).Value = ""
Next
For f = 1 To 100
Controls("CHECKBOX" & f).Value = False
Next
End Sub
'----------------------------------------------------------
Private Sub ListBox1_Click()
Dim f As Long
Dim myNAME As String
Dim myLID As Long
myNAME = ListBox1.Column(0)
myLID = ListBox1.ListIndex + 2
For f = 1 To 3
Controls("TEXTBOX" & f).Value = Worksheets("Sheet1").Cells(myLID, f).Value
Next
For f = 1 To 100
If Worksheets("Sheet1").Cells(myLID, f + 3).Value = 0 Then
Controls("CHECKBOX" & f).Value = False
End If
If Worksheets("Sheet1").Cells(myLID, f + 3).Value = 1 Then
Controls("CHECKBOX" & f).Value = True
End If
If Worksheets("Sheet1").Cells(myLID, f + 3).Value = "" Then
Controls("CHECKBOX" & f).Value = False
End If
Next
End Sub
|
|