| 
    
     |  | ▼ひいろ さん: 
 >プロシージャみつけました。
 >
 >Sub dspName(retu As Integer)
 >Dim temp1 As String
 >Dim gyo As Integer
 >
 >gyo = 3
 >UserForm1.Show(vbModeless)
 >UserForm1.IstChoice.Clear
 >
 >With Worksheets("職員情報")
 >Do Until(.Cells(gyo,retu).Value ="")
 >If retu = 1 Then
 >If .Cells(gyo,retu).value<>.Cells(gyo -1,retu).Value Then
 >UserForm1.IstChoice.AddItem(.Cell(gyo,retu).Value)
 >End If
 >Elself retu = 2 Then
 >tmp1 = Cells(ActiveCell.Row, ActiveCell.Column - 2)
 >If tmp1 = .Cells(gyo, retu - 1) Then
 >UserForm1.IstChoice.AddItem(.Cells(gyo,retu).Value)
 >End If
 >Elself retu = 4 Then
 >tmp1 = .Cells(8,5)
 >If tmp1 = .Cells(gyo, retu - 1) Then
 >UserForm1.IstChoice.AddItem(.Cells(gyo,retu).Value)
 >End If
 >End If
 >gyo = ryo + 1
 >Loop
 >End With
 >End Sub
 >
 >となっていました。
 >もう完全にキャパシティを越えてしまいました。
 
 あの、提示のdspNameプロシージャは
 コンパイルエラーで実行できませんが?
 
 >Elself retu = 2 Then
 は
 ElseIf retu = 2 Then
 のコピーミスですか??
 その部分を直せば、原因は明白です。
 
 > (1),(2),(4)はきちんと表示されるのですが,
 コードをよ〜〜く読んでください。
 
 If retu = 1 Then
 
 ElseIf retu = 2 Then
 
 ElseIf retu = 4 Then
 
 と書いてあるだけですよ!(^^)
 
 
 > それ以外がウィンドウは出てくるのですが
 それは プロシージャの最初で
 無条件で
 > UserForm1.Show(vbModeless)
 と表示しているからですよね
 
 |  |