如何从文本框输入中填充用户窗体列表框/组合框数组/列表?

问题描述 投票:0回答:1

我试图允许用户在文本框中输入数据,并将该数据添加到组合框数组,如何将其保存到代码中?

enter image description here

我有一些代码可以填充该会话的数据,但是在我关闭应用程序后它消失了。

Private Sub CommandButton1_Click()
   If TextBox1.TextLength > 0 Then
      UserForm1.ComboBox2.AddItem TextBox1.Value
      TextBox1.Value = ""
   Else
      Exit Sub
   End If
End Sub

Private Sub UserForm_Initialize()
   With ComboBox2
      .AddItem ".020"
      .AddItem ".030"
      .AddItem ".032"
      .AddItem ".040"
   End With
End Sub

我需要用户能够在此输入数据并将其保存在组合框中,以便以后其他所有人使用。任何帮助,将不胜感激!甚至搜索词也可以为我指明正确的方向。

vba word-vba
1个回答
0
投票

做这样的事情。在工作簿中有一个名为“数据”的工作表。当用户使用commandbutton1添加某些内容时,它将转到数据表的A列,并将用户值放在下一个可用行中。

当您加载其他表单时,它将遍历A列并获取所有值并将它们添加到组合框中。

    Private Sub CommandButton1_Click()
        Dim lastrow As Long: lastrow = Sheets("Data").Cells(Rows.Count, 1).End(xlUp).Row + 1

       If TextBox1.TextLength > 0 Then
          Sheets("Data").Cells(lastrow, 1).Value = TextBox1.Value
          TextBox1.Value = ""
       Else
       MsgBox "Please enter a value"
          Exit Sub
       End If
    End Sub


    Private Sub UserForm_Initialize()

    For i = 1 To Sheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
        ComboBox2.AddItem Sheets("Data").Cells(i, 1).Value
    Next

    End Sub
© www.soinside.com 2019 - 2024. All rights reserved.