VB 学习笔记
这一个月由于工作的需要,学习了一点 VB.net 操作 Excel,记录一下笔记
vb 里面的下标
vb 里面的下标有三种:
- 从 0 开始:当我们在 vb 中定义一个数组时,下标只能从 0 开始
Dim arr(2) as String中的 arr 数组长度为3注意不是2Dim arr(1 to 10) as String则会报错数组的下限只能是 0
- 从 1 开始:主要用于从 0 开始会引发异常的 collections 比如 Tabs, Pages, Controls(listBox, TextBox),Excel 里面的复杂类型下标都是从 1 开始
- 字典类型 下标为键值
在代码中尽量使用 LBound 和 UBound 来获取数组最小和最大下标,可以在模块中使用option base 1 来指定下标从 1 开始
VBA 数组下标详解
VBA option base 使用
关于 Excel lastUsedRow 和 lastUsedColumn
Excel 中 Worksheet.UsedRange.Rows 是指 Excel 工作簿中第一个不为空的行到最后一个不为空的行之间的行数 R,所以如果工作簿中一开始有空行的话,最后返回的结果为「R - 开头空的行数」,所以可能不是我们所预期的结果。
所以不要依靠 Worksheet.UsedRange.Rows 来获取最后一行而应该使用参考链接的方法
关于获取 Excel last rows
为什么 vb 中使用 Worksheet.UsedRange.Rows.Count 得到的结果是错的
关于 vb 的异常处理
VB 中使用 try catch 捕获异常,使用 throw 抛出异常。
但是如果有两个类分别在两个模块中,想在 A 类模块的函数中调用 B 类中的函数并捕获 B 类函数的异常,就会报个警告:Exception 类型异常在「模块 2」中发生但未处理
# 模块 1
Public Class Test1Private T = new Class Test2Private Sub test1()TryT.Test()Catch ex as ExceptionMsgBox(ex.message)End TryEnd SubEnd Class# 模块 2
Public Class Test2Public Sub Test()Throw new Exception(“error”)End Sub
End Class
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
