首页 > 解决方案 > 是/否循环有多个问题

问题描述

该问题要求创建一个循环,询问初始是/否问题:您是否为大学储蓄?如果否,则循环应该结束。如果是,代码应该要求用户回答:离大学开学还有几年、每年的大学学费和另一个孩子?如果另一个孩子的答案是肯定的,那么循环应该重新开始。如果答案是否定的,则循环应该结束。我很难把这些碎片放在一起。

我曾尝试使用是/否消息框,但遇到了更改为数字答案并让循环重新开始的问题。

Ans = MsgBox("Saving for college?", vbYesNo)
If Ans = vbNo Then Exit Sub
If Ans = vbYes Then
Dim myvalue As Integer
myvalue = InputBox("Years until college starts?")
Dim value As Integer
value = InputBox("Annual College Payments?")
Ans = MsgBox("Another child?")
Ans = MsgBox(msg, vbYesNo)
If Ans = vbYes**strong text** Then

标签: excelvbaloops

解决方案


下面的代码可能会对您有所帮助。但是请记住,您必须在消息框和输入框中处理用户回答(是、否、关闭、取消)。

Option Explicit

Sub test()

    Dim Ans1 As Long, value1 As String, value2 As String, Ans2 As String

    Ans1 = MsgBox("Saving for college", vbYesNo + vbQuestion)

    If Ans1 = vbNo Then
        Exit Sub
    ElseIf Ans1 = vbYes Then

        value1 = InputBox("Years until college starts?")
        value2 = InputBox("Annual College Payments?")
        Ans2 = MsgBox("Another child", vbYesNo + vbQuestion)
        If Ans2 = vbYes Then
            'Code
        ElseIf Ans2 = vbNo Then
            'Code
        End If
    End If

End Sub

推荐阅读