質問: Me.TextBox8 ```
回答: `Me.IDTextBox.Text`の記述でTextBoxコントロールのデータを参照することができます。(`Me`は省略可能です) 間違えやすいポイントは`IDTextBox`がTextBoxコントロールという入力欄そのものを表すことです。 一つ一つの入力欄はデータの他にName("IDTextBox"という識別名)、TopやLeft(フォーム内の配置座標)、TopやWidth(コントロールの大きさ)を表す**プロパティ**を持っています。 例えば`MsgBox IDTextBox.Width`と入力することでIDTextBoxコントロールの幅データを表示できます。 上記のようにTextも入力されたデータを管理するプロパティのひとつです。 またラジオボタンはチェック状態を`Value`プロパティで管理します。 `Value = True`ならば選択されている状態です。 複数のラジオボタンをグループ化して管理するために`GroupName`というプロパティも用意されています。 任意のラジオボタンをチェック状態にすると同一グループ名の他のラジオボタンは全てチェックが外れます。 性別のみ管理する場合は`GroupName`を設定しなくても普通に動きますが、性別以外にラジオボタンで管理する項目が増えた場合はグループごとに設定が必要です。 ``` Private Sub ReferenceBtn_Click() If IDTextBox.Text = "" Then MsgBox "参照する番号を入力してください。" Exit Sub End If '1行目から最終行までループ For i = 1 To Sheet1.Cells(Rows.Count, 1).End(xlUp) + 1 'IDが一致する行のみ処理 Set ID = Sheet1.Cells(i, 1) If ID = IDTextBox.Text Then 'TextBoxのTextプロパティを変更 TextBox2.Text = Sheet1.Cells(i, 2) 'OptionButtonのValueプロパティを変更 If Sheet1.Cells(i, 3) = "男" Then OptionButton1.Value = True Else OptionButton2.Value = True End If Exit Sub End If Next End Sub Private Sub UserForm_Initialize() 'プロパティウィンドウでGroupNameを設定してもOK OptionButton1.GroupName = "Sex" OptionButton2.GroupName = "Sex" End Sub ```