Excelで基礎講座ソフトを作ってみよう
Step 6 問題2(文字入力)の作成
1問目が出来たので、なるべく短いコードで連続し問題が作れるよう考えながら、問題2を作成します。
Homeに戻る >
Excelでアプリケーションソフト >
基礎講座ソフトを作ってみよう
シートのVBAコード
下記のVBAコードを追加してください。
'問題2 答えのチェック
Private Function Ex2AnswerCheck() As Boolean
Dim s1 As String
Ex2AnswerCheck = False
On Error GoTo ErrExit:
s1 = Range("D3")
If s1 = "地球にやさしい" Then
'答えが合っている
Ex2AnswerCheck = True
End If
Exit Function
ErrExit:
End Function
下記のVBAコードに変更してください。
'問題1 答えのチェック
Private Function Ex1AnswerCheck() As Boolean
Dim ln As Long
Ex1AnswerCheck = False
On Error GoTo ErrExit:
ln = Range("B10")
If ln = 125 Then
'答えが合っている
Ex1AnswerCheck = True
End If
Exit Function
ErrExit:
End Function
'問題実行
Private Sub ExDoexercise(tim As Long)
stTime = Timer
'シートにフォーカス
Sheet1.Range("A1").Select
Do
'経過時間の確認
If ExTimeCheck(tim) Then
'経過後の処理
Label2.Caption = "時間切れです!!"
Exit Do
End If
Loop Until endFlag = True
'フォームにフォーカス
UserForm1.Show
End Sub
'出来たボタン
Private Sub CommandButton2_Click()
Dim bret As Boolean
'終了フラッグ
endFlag = True
DoEvents
Select Case ComboBox1.ListIndex
Case 0: bret = Ex1AnswerCheck '問題1
Case 1: bret = Ex2AnswerCheck '問題2
End Select
If bret Then
Label6.ForeColor = &H8000&
Label6.Caption = "正解です。よくできました。"
'次の問題を表示する
If ComboBox1.ListCount - 1 > ComboBox1.ListIndex Then
ComboBox1.ListIndex = ComboBox1.ListIndex + 1
Else
'問題は終了
ComboBox1.ListIndex = 0
MsgBox "正解です。よくできました。" & vbCrLf & "問題はこれで終了です。お疲れ様でした。"
End If
Label4.Caption = ComboBox1.Column(1)
Else
Label6.ForeColor = vbRed
Label6.Caption = "間違っています。"
End If
'経過時間をリセット
Label1.Caption = 0
Label3.Caption = "開始ステップを選択し、「始める」ボタンをクリックしてください。"
ComboBox1.Enabled = True
CommandButton1.Enabled = False
CommandButton2.Enabled = False
CommandButton3.Enabled = True
End Sub
'開始ボタン
Private Sub CommandButton3_Click()
Label6.Caption = ""
CommandButton1.Enabled = True
CommandButton2.Enabled = True
CommandButton3.Enabled = False
ComboBox1.Enabled = False
'終了フラッグをリセット
endFlag = False
Label3.Caption = "ワークシート上で、課題を実行してください。"
Select Case ComboBox1.ListIndex
Case 0: '問題1
Label2.Caption = "[ B10 ] セルに [ 125 ] と入力してください。"
ExDoexercise (20)
Case 1: '問題2
Label2.Caption = "[ D3 ] セルに [ 地球にやさしい ] と入力してください。"
ExDoexercise (10)
End Select
Label3.Caption = "開始ステップを選択し、「始める」ボタンをクリックしてください。"
ComboBox1.Enabled = True
CommandButton1.Enabled = False
CommandButton2.Enabled = False
CommandButton3.Enabled = True
End Sub
実行中の画面
■問題2 「[ D3 ] セルに [ 地球にやさしい ] と入力してください。」の正解画面
Homeに戻る >
Excelでアプリケーションソフト >
基礎講座ソフトを作ってみよう
■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します
Copyright (c) Excel-Excel ! All rights reserved