|    | 
     こんにちは。 
まず 
Rowsourceには名前を付けなくても大丈夫です。 
(外部参照のアドレスが簡単です。) 
 
このときにA〜Cまでをリストに入れておけば 
面倒なシートからの検索は不必要になります。 
なぜなら 
選択したリストに2,3列目を取り出すだけでいいからです。 
----------------------------------------------------------------------- 
Private Sub UserForm_Initialize() 
  With Me.ComboBox1 
    .RowSource = Worksheets("PT9165_DATA" _ 
      ).Range("A2:C375").Address(, , , True) 
    .ColumnHeads = True 
  End With 
End Sub 
 
Private Sub ComboBox1_Change() 
  Dim StrT(1) As String 
   
  With Me.ComboBox1 
    If .ListIndex > -1 Then 
      StrT(0) = .Column(1) 
      StrT(1) = .Column(2) 
    End If 
  End With 
   
  Me.TextBox1.Value = StrT(0) 
  Me.TextBox2.Value = StrT(1) 
End Sub 
 
★一つ気になったのは 
>Range("A2:C375"). 
の375は確定なのでしょうか? 
もし確定でないなら最終セルを取得してリストにした方がいいですよ。 
 
 | 
     
    
   |