|    | 
     ▼悩める老人 さん: 
>ご指摘ありましたOption Explicitを義務づけるようにいたします。 
>なお Do Loop を使えば、もっとわかりやすく記述がでるとのことですが 
>どのように記述すればよいのか不勉強で不明なのです。 
>まことに恐縮ですがご教示ねがいませんか? よろしくお願いいたします。 
 
Sub 再開回答2() 
 'パスワードで個別データを呼出す 
  Dim bangohanni As Range 
  Dim bango As Variant 
  Dim DT As Worksheet 
  Dim retu As Variant 
  Dim DT表示 As Long 
  Set DT = Worksheets("DT") 
  Application.DisplayAlerts = False 
  If MsgBox("中断した回答の再開ですよね (?_?) ", vbYesNo) = vbYes Then 
   retu = Empty 
   Do While IsEmpty(retu) 
     Set bangohanni = DT.[e3:iv3] 
     bango = Application.InputBox(prompt:="パスワードを入力してください!", _ 
                    Title:="パスワード入力", Type:=1) 
     If TypeName(bango) <> "Boolean" Then 
      On Error Resume Next 
      retu = WorksheetFunction.Match(bango, bangohanni, 0) 
      If Err.Number <> 0 Then '見つからない 
        MsgBox "該当する番号はありませんよ!確認してください" 
      Else          '見つかった 
        'DT表示 = retu + 4 'DT呼出表示する 
        MsgBox "回答が完了したら「Ank回答」をクリックしてください" 
      End If 
      On Error GoTo 0 
     Else 
      MsgBox "パスワードを確認してやり直してください (?_?)" 
      retu = 0 'ループを抜けるために 0を入れる 
     End If 
   Loop 
  End If 
  Application.DisplayAlerts = True 
End Sub 
 
構造化プログラミングについて、一度検索してみるとよいですよ!! 
階層構造をつくる なんて事が記述されている箇所があったら、注目してください。 
 
 | 
     
    
   |