Filter函数实现数组筛选:
平罗网站建设公司创新互联公司,平罗网站设计制作,有大型网站制作公司丰富经验。已为平罗上千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的平罗做网站的公司定做!
数组的筛选就是根据一定的条件,从数组中筛选符合条件的值,组成一个新的数组,实现数组筛选的VBA函数是:
Filter函数
用法:Filter(数组,
筛选的字符,
是否包含)
Sub
DD()
arr1
=
VBA.Filter(arr,
"A",
True)
'筛选所有含A的数值组成一个新数组
arr2
=
VBA.Filter(arr,
"A",
False)
'筛选所有不含A的数值组成一个新数组
MsgBox
Join(arr2,
",")
'查看筛选的结果End
Sub遗憾的是函数只能进行模糊筛选,不能精确匹配。
'首先通过菜单[项目] -- [添加引用],选择[COM]选项卡,选择“Microsoft Excel XX.0 Object Library”,[确定]。
添加一个按钮:
试试下面的代码:注意版本;先建立以个EXCEL文件保存到c:\下面,我的计算机是安装OFFICE 2010。
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim AppXls As Microsoft.Office.Interop.Excel.Application '声明Excel对象
Dim AppWokBook As Microsoft.Office.Interop.Excel.Workbook '声明工作簿对象
Dim AppSheet As New Microsoft.Office.Interop.Excel.Worksheet '声明工作表对象
AppXls = New Microsoft.Office.Interop.Excel.Application '实例化Excel对象
AppXls.Workbooks.Open("C:\工作簿1.xlsx") '打开已经存在的EXCEL文件
AppXls.Visible = False '使Excel不可见
'AppWokBook = New Microsoft.Office.Interop.Excel.Workbook '实例化工作簿对象
'AppSheet = New Microsoft.Office.Interop.Excel.Worksheet '实例化工作表对象
AppWokBook = AppXls.Workbooks(1) 'AppWokBook对象指向工作簿"C:\学生成绩.xls"
AppSheet = AppWokBook.Sheets("Sheet1") 'AppSheet对象指向AppWokBook对象中的表“Sheet1”,即:"C:\学生成绩.xls"中的表“Sheet1”
'下面举一些例子:
'1、如果不声明工作表对象 AppSheet ,那么应用AppWokBook对象中的表“Sheet1”的语句就是:AppWokBook.Sheets("Sheet1")
'2、如果不声明工作簿对象 AppWokBook ,那么应用"C:\学生成绩.xls"中的表“Sheet1”的语句就是:AppXls.Workbooks("C:\学生成绩.xls").Sheets("Sheet1")
'要读取数据表"Sheet1"中的单元格“A1”的值,到变量S1里
Dim S1 As String
'方法一
S1 = AppXls.Workbooks(1).Sheets("Sheet1").Range("A1").Value
MsgBox(S1)
'方法二
S1 = AppWokBook.Sheets("Sheet1").Range("A1").Value
MsgBox(S1)
'方法三
S1 = AppSheet.Range("A1").Value
MsgBox(S1)
'把数据写入到单元格“H2”,就是第2行第8个单元格
'方法一
AppXls.Workbooks(1).Sheets("Sheet1").Cells(2, 8).Value = "您好!"
S1 = AppXls.Workbooks(1).Sheets("Sheet1").Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)
'方法二
AppWokBook.Sheets("Sheet1").Cells(2, 8).Value = "你们好!"
S1 = AppWokBook.Sheets("Sheet1").Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)
'方法二
AppSheet.Cells(2, 8).Value = "大家好!"
S1 = AppSheet.Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)
'使用完毕必须关闭EXCEL,并退出
AppXls.ActiveWorkbook.Close(SaveChanges:=True)
AppXls.Quit()
'完成此程序,打开EXCEL检查,可以看到在“Sheet1”表的单元格“H2”里是文本“大家好!”
End Sub
End Class
例如某zd数组名称是a
计算它的长度就是 Ubound(a) + 1,Ubound()函数是用来获取数组中最大上限。
例如某数组有5个元回素,那么,通过个取得的最大上限就是4,因为vb中的数组是从0开始的,所以在取得这个最大上限之答后还需要加上一个1。
扩展资料:
UBound 函数: 返回一个 Long 型数据,其值为指定的数组维可用的最大下标。
语法为UBound(arrayname[, dimension])
Ubound函数返回值
返回一个 Long 型数据,其值为指定的数组维可用的最大下标。
假如 arrayname 为空,ubound 方法将返回 undefined。
部分参数
arrayname
必需的,表示数组变量的名称,遵循标准变量命名约定。
参考资料来源:百度百科-Ubound