vbalistbox作为参数怎么用

vbalistbox作为参数怎么用,第1张

用additem方法。

additem是listbox的一个方法,有两个参数,第一个参数是添加到listbox中的文本Itemasstring,第二个参数是添加到listbox中的索引Indexaslong,该索引对应列表中的第几项,是个可选参数。

vba窗体中如何获取列表框listbox1选中行的值提取出来,这决于您的列表框是多列还是单列。

OLEObject 对象

请参阅 属性 方法 事件 特性

Sheets

OLEObjects (OLEObject)

Borders (Border)

Interior

返回工作表中一个 ActiveX 控件或者一个链接式或内嵌 OLE 对象。OLEObject 对象是 OLEObjects 集合的成员。OLEObjects 集合中包含单张工作表中的所有 OLE 对象。

OLEObject 对象的用法

可用 OLEObjects(index) 返回一个 OLEObject 对象,其中 index 为对象名称或编号。下例删除 Sheet1 中的 OLE 对象一。

Worksheets("sheet1")OLEObjects(1)Delete

下例删除名称为“ListBox1”的 OLE 对象。

Worksheets("sheet1")OLEObjects("ListBox1")Delete

说明

工作表上的 ActiveX 控件的 OLEObject 对象的属性和方法是相同的。这样,通过使用控件名称,Visual Basic 代码即可访问这些属性。下例选中复选框控件“MyCheckBox”,将其设为与活动单元格对齐,然后激活此控件。

With MyCheckBox

Value = True

Top = ActiveCellTop

Activate

End With

有关详细信息,请参阅在工作表上使用 ActiveX 控件。

SQL = "select from formQT where 地区 like '%" & Combo3Text & "%'"

这是模糊查询语法

请在以上语句后面添加条件,

SQL = "select from formQT where 地区='" & combo3text & "' and 街道名称='" & List1List(List1ListIndex) & "'

在你使用查询语句前,你需要处理 listbox 中获取得的字符串可以使用下面的语句来获取listbox控件中的字符串

Text1Text = List1List(List1ListIndex)

MSComm控件提供了两种处理通信的方式:一种为事件驱动方式,该方式相当于一般程序设计中的中断方式。当串口发生事件或错误时,MSComm控件会产生OnComm事件,用户程序可以捕获该事件进行相应处理。另一种为查询方式,在用户程序中设计定时或不定时查询MSComm控件的某些属性是否发生变化,从而确定相应处理。在程序空闲时间较多时可以采用该方式。 常用属性和方法 利用MSComm控件实现计算机通信的关键是理解并正确设置MSComm控件众多属性和方法。以下是MSComm控件的常用属性和方法:

●Commport:设置或返回串口号。

●Settings:以字符串的形式设置或返回串口通信参数。

●Portopen:设置或返回串口状态。

●InputMode:设置或返回接收数据的类型。

●Inputlen:设置或返回一次从接收缓冲区中读取字节数。

●InBufferSize:设置或返回接收缓冲区的大小,缺省值为1024字节。

●InBufferCount:设置或返回接收缓冲区中等待计算机接收的字符数。

●Input:从接收缓冲区中读取数据并清空该缓冲区,该属性设计时无效,运行时只读。

●OutBufferSize:设置或返回发送缓冲区的大小,缺省值为512字节。

●OutBufferCount:设置或返回发送缓冲区中等待计算机发送的字符数。

●Output:向发送缓冲区发送数据,该属性设计时无效,运行时只读。

●Rthreshold:该属性为一阀值。当接收缓冲区中字符数达到该值时,MSComm控件设置Commevent属性为ComEvReceive,并产生OnComm事件。用户可在OnComm事件处理程序中进行相应处理。若Rthreshold属性设置为0,则不产生OnComm事件。例如用户希望接收缓冲区中达到一个字符就接收一个字符,可将Rthreshold设置为1。这样接收缓冲区中接收到一个字符,就产生一次OnComm事件。

●Sthreshold:该属性亦为一阀值。当发送缓冲区中字符数小于该值时,MSComm控件设置Commevent属性为ComEvSend,并产生OnComm事件。若Sthreshold属性设置为0,则不产生OnComm事件。要特别注意的是仅当发送缓冲区中字符数小于该值的瞬间才产生OnComm事件,其后就不再产生OnComm事件。例如Sthreshold设置为3,仅当发送缓冲区中字符数从3降为2时,MSComm控件设置Commevent属性为ComEvSend,同时产生OnComm事件,如发送缓冲区中字符始终为2,则不会再产生OnComm事件。这就避免了发送缓冲区中数据未发送完就反复发生OnComm事件。

●CommEvent:这是一个非常重要的属性。该属性设计时无效,运行时只读。一旦串口发生通信事件或产生错误,依据产生的事件和错误,MSComm控件为CommEvent属性赋不同的代码,同时产生OnComm事件。用户程序就可在OnComm事件处理程序中针对不同的代码,进行相应的处理。 CommEvent通信事件代码 常数 含义

1 ComEvReceive 接受到Rthreshold个字符。该事件将持续产生,直到用Input属性从接受缓冲区中读取并删除字符。

2 ComEvSend 发送缓冲区中数据少于Sthreshold个,说明串口已经发送了一些数据,程序可以用Output属性继续发送数据。

3 ComEvCTS Clear To Send信号线状态发生变化。

4 ComEvDSR Data Set Ready信号线状态从1变到0。

5 ComEvCD Carrier Detect信号线状态发生变化。

6 ComEvRing 检测到振铃信号。

7 ComEvEOF 接受到文件结束符。

CommEvent通信错误代码 常数 含义

1001 ComEvntBreak 接受到一个中断信号。

1002 ComEvntCTSTO Clear To Send信号超时。

1003 ComEvntDSRTO Data Set Ready信号超时。

1004 ComEvntFrame 帧错误。

1006 ComEvntOverrun 串口超速。

1007 ComEvntCDTO 载波检测超时。

1008 ComEvntRxOver 接受缓冲区溢出,缓冲区中已没有空间。

1009 ComEvntRxParity 奇偶校验错。

1010 ComEvntTxFull 发送缓冲区溢出,缓冲区中已没有空间。

1011 ComEvntDCB 检索串口的设备控制块时发生错误。

答:条件假设:

文本框:TextBox1;列表框:ListBox1;数据区域左上角为A1;此工作表为活动工作表。

添加TextBox1事件代码:

Private Sub TextBox1_Change()

    Dim Arr() As Variant

    Dim LastRow As Long, Count As Long, i As Long

    LastRow = Cells(RowsCount, 2)End(xlUp)Row

    ReDim Arr(1 To 5, 1 To LastRow)

    Count = 1

    For i = 2 To LastRow

        If Cells(i, "B") = TextBox1Text Then

            Arr(1, Count) = Cells(i, "A")

            Arr(2, Count) = Cells(i, "B")

            Arr(3, Count) = Cells(i, "C")

            Arr(4, Count) = Cells(i, "D")

            Arr(5, Count) = Cells(i, "E")

            Count = Count + 1

        End If

    Next

    ReDim Preserve Arr(1 To 5, 1 To Count)

    ListBox1ColumnCount = 5

    ListBox1List = ApplicationTranspose(Arr)

End Sub

列的数量可以通过ColumnCount属性来控制。要显示列标题 ,设置ColumnHeads = True,注意最终显示多少列好像和Listbox中的数据有几列有关,取两者中的最小值。

可以通过RowSource属性来添加表格中的数据到ListBox中。在vba中用Range对象的Address属性来设置ListBox的RowSource,这样也就可以把一个Range对象的数据放到ListBox中了,注意Range对象的上一行则设置为列标题。代码如下:

ListBox1RowSource=rngAddress

OLEObject 对象

请参阅 属性 方法 事件 特性

Sheets

OLEObjects (OLEObject)

Borders (Border)

Interior

返回工作表中一个 ActiveX 控件或者一个链接式或内嵌 OLE 对象。OLEObject 对象是 OLEObjects 集合的成员。OLEObjects 集合中包含单张工作表中的所有 OLE 对象。

OLEObject 对象的用法

可用 OLEObjects(index) 返回一个 OLEObject 对象,其中 index 为对象名称或编号。下例删除 Sheet1 中的 OLE 对象一。

Worksheets("sheet1")OLEObjects(1)Delete

下例删除名称为“ListBox1”的 OLE 对象。

Worksheets("sheet1")OLEObjects("ListBox1")Delete

说明

工作表上的 ActiveX 控件的 OLEObject 对象的属性和方法是相同的。这样,通过使用控件名称,Visual Basic 代码即可访问这些属性。下例选中复选框控件“MyCheckBox”,将其设为与活动单元格对齐,然后激活此控件。

With MyCheckBox

Value = True

Top = ActiveCellTop

Activate

End With

有关详细信息,请参阅在工作表上使用 ActiveX 控件。

以上就是关于vbalistbox作为参数怎么用全部的内容,包括:vbalistbox作为参数怎么用、VBA中怎样获取控件的值、VB6.0中如何以listbox中的选中项为数据库的查找条件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9645753.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存