Expected End Sub in VBA



我刚开始使用VBA,所知甚少。猜测错误与多个子系统有关,并且没有正确声明和定义它们:

在代码片段中,我试图允许用户输入"苹果和梨"的数量,然后能够计算总数并将其导出回excel表。

任何帮助都将不胜感激-谢谢!

Private Sub calculateButton_Click()
Private Sub calculation()

Dim applesCalculation As String
Dim pearsCalculation As String
Dim newRow
applesCalculation = applesTextbox.Text
pearsCalculation = pearsTextbox.Text
calculation = applesCalculation + pearsCalculation
newRow = Application.WorksheetFunction.CountA(Range("A:A")) + 1
End Sub

错误是因为代码顶部有2个Sub,底部只有1个End Sub
若要在单击按钮后运行代码,请从代码中删除Private Sub calculation()
另一件事是,您试图连接字符串,而不是添加苹果和梨的数量。


我认为与其我们试图修复你的代码,不如看看一些VBA教程。

教程链接

  1. http://www.excelfunctions.net/Excel-VBA-Tutorial.html
  2. https://www.youtube.com/user/ExcelVbaIsFun
  3. https://www.youtube.com/watch?v=ABXPb0qnKUY

其他来源

  1. https://msdn.microsoft.com/en-us/library/office/ff194068.aspx
  2. VBA帮助功能(F1)

当然,我们愿意帮助你,也很乐意帮助你,但这些都是你真正缺少的基本知识。我鼓励你以后再来,如果你还困着的话。

分析以下提示:

Private Sub calculateButton_Click()
   calculation
end Sub
Private Sub calculation()
   Dim applesCalculation As Long
   Dim pearsCalculation As Long
   Dim newRow
   applesCalculation = val(applesTextbox.Text)
   pearsCalculation = val(pearsTextbox.Text)
   calculation = applesCalculation + pearsCalculation
   newRow = cells(rows.count,1).end(xlup).row + 1
   Thisworkbook.Worksheets(1).Range("A" & newRow).value= newRow
End Sub

最新更新