0

我有一个 excel 文档,其中 1 列上有 5 个连续的单元格,需要用数据填充。我正在寻找创建一个 VBA 用户表单,它将通过一系列问题来帮助用户输入正确的数据。

假设这 5 个单元格是 A1 到 A5。一旦调用了用户表单,它应该显示一个问题(可能是标签?),一个用于输入数据的文本框,以及一个用于移动下一个问题的命令按钮。一直从 A1 移动到 A2,以此类推,直到完成提问。

有谁知道如何做到这一点?我的 VB 知识很基础,但我尝试并尝试无济于事。

提前致谢!

4

1 回答 1

2

给定这样的形式:

用户窗体

您可以将您的问题设置在一个数组中,并在每次按下按钮时迭代它们,同时为您的工作表设置答案。

Dim i As Integer
Dim str(1 To 3) As String

Private Sub UserForm_Initialize()
    i = 1
    str(1) = "Question 1"
    str(2) = "Question 2"
    str(3) = "Question 3"

    btnNext.Default = True
    lblQuestion.Caption = str(i)
    txtAnswer.SetFocus
End Sub

Private Sub btnNext_Click()
    Sheets("Sheet1").Cells(i, 1).Value = txtAnswer.Text
    i = i + 1
    If i = UBound(str) + 1 Then
        UserForm1.Hide
        Exit Sub
    End If
    lblQuestion.Caption = str(i)
    txtAnswer.Text = ""
    txtAnswer.SetFocus
End Sub

结果示例: 结果

于 2013-06-28T14:54:55.873 回答