| 
    
     |  | 釈をすこしやってみたのですが、あってもすか? それとこのプログラムでは、すべてyesだけエラーがでるんです。
 たぶん間違っているのは、↓
 Message = mes1(4) & vbCrLf & mes2(4) & vbCrLf & mes3(4)
 のところだと思うんですが、どうでしょうか?
 デバックを押すと黄色くなるところです。
 どなたか、お願いします。
 Dim Message As String
 Dim Yes As Integer
 Dim Mondai As String
 Dim n As Integer
 Dim Ans As Integer
 Dim mes1(3) As String
 Dim mes2(3) As String
 Dim mes3(3) As String
 Dim mes4(3) As String
 
 
 For n = 1 To 3
 mes1(n) = Sheet3.Cells(n, 2).Value
 mes2(n) = Sheet3.Cells(n, 3).Value
 mes3(n) = Sheet3.Cells(n, 4).Value
 Next n
 Yes = 0
 
 For n = 1 To 9 Step 1 '7回問題を出題
 Mondai = Sheet2.Cells(n, 1).Value
 Ans = MsgBox(Mondai, vbYesNo, "問題")
 
 If Ans = vbYes Then 'yesの数だけ表示
 Yes = Yes + 1
 End If
 Next n
 Select Case Yes 'yesの数だけ変化させる
 Case 0, 1
 Message = mes1(1) & vbCrLf & mes2(1) & vbCrLf & mes3(1)
 Case 2 To 4
 Message = mes1(2) & vbCrLf & mes2(2) & vbCrLf & mes3(2)
 Case 5 To 7
 Message = mes1(3) & vbCrLf & mes2(3) & vbCrLf & mes3(3)
 Case 8, 9
 Message = mes1(4) & vbCrLf & mes2(4) & vbCrLf & mes3(4)
 End Select
 
 Message = "yesは" & Yes & vbCrLf & Message '三行で構成する
 
 MsgBox Message, vbInformation 'メッセージにiのマークをだす
 
 End Sub
 
 
 |  |