0
私はここに参加でき、私ができるところに貢献することを願っています。数字の値を表示できません
私のVBAスクリプトの最後の3つのセクションに大きな問題があります。 スライドに正しく、間違っている、パーセント値が表示されていません40 & 41.
スライド42では、ユーザー名、日付、および全体のパーセンテージスコアを表示するテキストボックスまたはラベルを取得できません。
スライド40についてのヘルプはすばらしく、残りの部分は練習できます。
**Sub shapeTextHappySmile()**strong text**
Sub ShapeTextSadSmile()
Sub CertificateBuld()**
Option Explicit
Dim UserName As String
Dim numberCorrect As Integer
Dim numberIncorrect As Integer
Dim numberPercentage As Integer
Dim numberTotal As Integer
Private Sub CertDate()
Dim Rdate As Variant
Rdate = Date
Rdate = Format((Date), "mmmm dd, yyyy")
End Sub
Sub Initialise()
numberCorrect = 12
numberIncorrect = 8
numberPercentage = 58
numberTotal = 20
numberTotal = (numberCorrect + numberIncorrect)
numberCorrect = (numberTotal - numberIncorrect)
numberIncorrect = (numberTotal - numberCorrect)
numberPercentage = Round(numberCorrect/numberTotal) * 100
End Sub
Sub TakeQuiz()
UserName = InputBox(Prompt:="Type Your Name! ")
MsgBox "Welcome To The Academic Online Tutorial Quiz " + UserName, vbApplicationModal, " Academic Online Tutorial Quiz"
ActivePresentation.SlideShowWindow.View.Next
End Sub
Sub Correct()
numberCorrect = numberCorrect + 1
MsgBox ("Great well Done! That's the correct answer")
ActivePresentation.SlideShowWindow.View.Next
End Sub
Sub Incorrect()
numberIncorrect = numberIncorrect + 1
MsgBox ("Sorry! That was the incorrect answer")
ActivePresentation.SlideShowWindow.View.Next
End Sub
Sub shapeTextHappySmile()
ActivePresentation.Slides(40).Shapes(Label1).TextFrame.TextRange.Text = 12
'numberCorrect
ActivePresentation.Slides(40).Shapes(Label2).TextFrame.TextRange.Text = numberPercentage & "%"
MsgBox "Great Job, Well done " + "," & "Please print a copy of your completion certificate"
MsgBox "After printing or saving a copy of your certificate, you can exit the presentation"
With SlideShowWindows(1).View
.GotoSlide 42
End With
End Sub
Sub ShapeTextSadSmile()
ActivePresentation.Slides(41).Shapes("AnsweredIncorrectly").TextFrame.TextRange.Text = numberIncorrect
ActivePresentation.Slides(41).Shapes("InCorrectPercentage").TextFrame.TextRange.Text = numberPercentage & " %"
MsgBox "Your score was below 70%, in order to pass the quiz and receive a certificate of completion you need to score 70% or more."
MsgBox "Please retake the quiz, and good luck"
With SlideShowWindows(1).View
.GotoSlide 1
End With
' I will add the option of redoing the entire presentation or just the quiz.
'see slide 19 action buttons
End Sub
Sub CertificateBuld()
MsgBox "Great Job, Well done " + "," & "Plese print a copy of your completion certificate"
MsgBox "After printing or saving a copy of your certificate, please exit the presentation"
If numberCorrect >= "14" Then
ActivePresentation.Slides(42).Shapes(" ABCDEFGHIJKLMN ").TextFrame.TextRange.Text = " ABCDEFGHIJKLMN "
ActivePresentation.Slides(42).Shapes("Rdate & Percentage").TextFrame.TextRange.Text = " ON " & Rdate & " WITH A SCORE OF " & numberPercentage & " %"
ActivePresentation.Slides(42).Shapes(UserName).TextFrame.TextRange.Text = UserName
'OR
If numberCorrect <= "14" Then
ActivePresentation.Slides(42).Shapes(8).TextFrame.TextRange.Text = ABCDEFGHIJKLMN "
ActivePresentation.Slides(42).Shapes(9).TextFrame.TextRange.Text = Rdate & " ON " & Rdate & " WITH A SCORE OF " & numberPercentage & " %"
ActivePresentation.Slides(42).Shapes(10).TextFrame.TextRange.Text = UserName
Else
ActivePresentation.SlideShowWindow.View.Save
ActivePresentation.SlideShowWindow.View.Exit
End If
End Sub
は、提案された変更をお願い致します。 [ユーザー名、日付、パーセンテージ]などの選択した変数をフォームに挿入するときまで、スクリプトを変更することができました。そのフォームで私は3つのアイテムのためのlablesを作成していますが、まだフォーム上にそれらを得ることはできません。これは私の新しいコードです。スライド42のフォームに情報を挿入するには、ラベルやテキストボックスを使用しますか?私は、Correct()サブセクションの情報が私の問題を解決することを期待していましたが、そうしませんでした。新しいアイデア。私は日付の形式がオフになっていることを知っている..私のコードのためのスペースが残っていない。 – CBiscuit
コメント内のコードが混乱してしまいます。元の投稿を編集してそこにコードを追加したり、新しい質問を開始したりします。しかし、あなたの他の質問に答えて、あなたのコードを変更したのは、あなたがテキストを設定するために.Captionプロパティを使うラベルコントロールを使っていたという仮定に基づいていました。 TextBoxコントロールに変更する場合は、代わりに.Textプロパティを使用します。 –
さて、私はすべてを試しています。私は物事を行う方法についてVBAの記事を読む日のほとんどを過ごしました。私が働くものが見つかるまで。新しい小さなプロジェクトが始まります。私は何を使うべきか分からない。私はすぐにログオンし、私の最後の投稿を削除します。 – CBiscuit