Excel 使用「;“设置”;VBA中的关键字不清晰
我正在尝试编辑代码,以便通过使用Excel的UserForm实际输入数据来传输数据,即输入到工作表中。听起来可能很复杂。换句话说,在UserForm中键入数据,然后单击UserForm上插入的“命令按钮”,数据将被放置在表的下一个空行上 使用的原始代码set ws=DataTable,ws作为工作表显示。虽然我知道什么是表,但我不确定什么是数据表,甚至不确定数据表和数据表之间是否有区别。我设计了一个数据表,第一行作为列标题:字段1、字段2和字段3,其中包括5行,这很简单。我将ws=Table和Dim ws设置为工作表,Dim nextRow设置为长。此时将显示UserForm,用于关闭/取消它的命令按钮将起作用。但是,当我在UserForm上输入3条数据并单击命令按钮输入/保存数据时,我得到一个错误: 运行时错误91:对象变量或未设置块变量 如果选择“调试”,则以黄色突出显示的代码行为:Excel 使用「;“设置”;VBA中的关键字不清晰,excel,vba,Excel,Vba,我正在尝试编辑代码,以便通过使用Excel的UserForm实际输入数据来传输数据,即输入到工作表中。听起来可能很复杂。换句话说,在UserForm中键入数据,然后单击UserForm上插入的“命令按钮”,数据将被放置在表的下一个空行上 使用的原始代码set ws=DataTable,ws作为工作表显示。虽然我知道什么是表,但我不确定什么是数据表,甚至不确定数据表和数据表之间是否有区别。我设计了一个数据表,第一行作为列标题:字段1、字段2和字段3,其中包括5行,这很简单。我将ws=Table和D
nextRow = ws.Cells(Rows.Count,1).End(xlUp).Offset(1,0).Row
我一直搜索到发蓝——我只是在学习VBA,希望能在解释可能是什么方面得到一些帮助
这个问题。最有可能的是表与数据表的关系——不确定。Excels的数据表单太死板,无法使用,因为我需要使用“组合框”来确保只从中选择正确的选项
感谢您的建议或其他网站的建议,可能有利于查看。有谁能推荐一个好的在线VBA课程吗。更喜欢推荐而不是“黑暗中射击”
最美好的一周祝愿 您是否尝试过(注意ws.Rows.Count
)
如果没有工作表澄清行
将返回可能不是您想要的活动工作表
顺便说一句,这是我如何得到表的最后一行。我有一个计算行数的函数
Public Function CountRows(ByRef r As Range) As Integer
If IsEmpty(r) Then
CountRows = 0
ElseIf IsEmpty(r.Offset(1, 0)) Then
CountRows = 1
Else
CountRows = r.Worksheet.Range(r, r.End(xlDown)).Rows.Count
End If
End Function
然后我把它当作
Set r = ws.Range("A2") 'Or start of data
N = CountRows(r)
Set nextRow = r.Offset(N+1,0).Row
Set r = ws.Range("A2") 'Or start of data
N = CountRows(r)
Set nextRow = r.Offset(N+1,0).Row