Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
添加新的自动填充单元格并将单元格值返回到userform VBA Excel_Vba_Excel - Fatal编程技术网

添加新的自动填充单元格并将单元格值返回到userform VBA Excel

添加新的自动填充单元格并将单元格值返回到userform VBA Excel,vba,excel,Vba,Excel,我已经找了几个小时的解决方案,有人能帮我吗 我有一个cmd按钮来打开用户表单,并在“主查询日志”工作表中创建一个新条目。我希望cmd按钮自动填充“A”列中主日志的下一个数字,然后将该数字返回给用户表单 我认为可能需要添加一个用户表单初始化子项,但我不确定要输入什么 任何帮助都将不胜感激 Private Sub cmdAdd_Click() Dim iRow As Long Dim ws As Worksheet Set ws = Worksheets("Master Enq. Log")

我已经找了几个小时的解决方案,有人能帮我吗

我有一个cmd按钮来打开用户表单,并在“主查询日志”工作表中创建一个新条目。我希望cmd按钮自动填充“A”列中主日志的下一个数字,然后将该数字返回给用户表单

我认为可能需要添加一个用户表单初始化子项,但我不确定要输入什么

任何帮助都将不胜感激

    Private Sub cmdAdd_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("Master Enq. Log")
'find first empty row in database
iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, _
    SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1


'copy the data to the database
'use protect and unprotect lines,
'     with your password
'     if worksheet is protected
With ws
'  .Unprotect Password:="password"


  .Cells(iRow, 2).Value = Me.txtCustName.Value
  .Cells(iRow, 3).Value = Me.txtCustAddr.Value
  .Cells(iRow, 4).Value = Date
  .Cells(iRow, 5).Value = Me.cboProjEng.Value
  .Cells(iRow, 6).Value = Me.cboDrawer.Value
  .Cells(iRow, 11).Value = Me.cboSalesPers.Value
'  .Protect Password:="password"
End With

'clear the data
Me.txtCustName.Value = ""
Me.txtCustAddr.Value = ""
Me.cboProjEng.Value = "Select"
Me.cboDrawer.Value = "Select"
Me.cboSalesPers.Value = "Select"
Me.txtCustName.SetFocus

End Sub

您需要在userform initialize事件中填充userform。您可能会得到范围(“A:A”)中的最大值,并以这种方式填充表单。iRow=ws.range(“A”&Rows.Count)。End(xlUp)。Row+1