UserForm:关于编码和使用

时间:2013-11-24 18:49:54

标签: vba excel-vba excel

我将再次提出我的问题,即我没有编程语言的经验。但是,我有一个UserForm,我差不多完成了编码。现在我只需要完成“OK”按钮的编码。我只是不确定在输入“结束时间”和“清除表格”后如何完成。

我的目标是在按下“确定”按钮后自动关闭表单,并将用户信息输入到引用的单元格中。我有两个问题,如下所示:

第一个问题:UserForm输入的信息在S5开始并继续通过AB5。我正在设置一个宏让用户单击公司名称,随后会弹出UserForm。我的问题是,UserForm将如何编程以标记到下一行?

第二个问题:我这个表格中没有任何IF变量。究竟应该如何在“'清除表单”语句下面编码区域以提交信息并关闭下一个条目的UserForm。

这是我正在使用的代码:

Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub cmdOK_Click()
Dim RowCount As Long
Dim ctl As Control
RowCount = Worksheets("February Renewals").Range("S5").CurrentRegion.Rows.Count
With Worksheets("February Renewals").Range("S5")
    .Offset(RowCount, 0).Value = Me.ComboBoxStatus.Value
    .Offset(RowCount, 1).Value = Me.ComboBoxRemarketed.Value
    .Offset(RowCount, 2).Value = Me.ComboBoxCarrier1.Value
    .Offset(RowCount, 3).Value = Me.ComboBoxCarrier2.Value
    .Offset(RowCount, 4).Value = Me.ComboBoxCarrier3.Value
    .Offset(RowCount, 5).Value = Me.ComboBoxOptional1.Value
    .Offset(RowCount, 6).Value = Me.ComboBoxOptional2.Value
    .Offset(RowCount, 7).Value = Me.ComboBoxOptional3.Value
    .Offset(RowCount, 8).Value = Me.ComboBoxLost.Value
    .Offset(RowCount, 9).Value = Me.txtAdditionalNotes.Value
    End With
    'Clear the form
End Sub

我知道这是一个非常长的基本问题,所以感谢能够回答它的任何人。 :)

1 个答案:

答案 0 :(得分:0)

要清除文本框或组合框,只需使用.Value属性即可。例如

TextBox1.Text = ""
ComboBox1.Value = ""

但是,如果你的组合框的样式是fmStyleDropDownList,那么你必须使用.ListIndex属性。例如

ComboBox1.ListIndex = -1
相关问题