在VBA Excel中对组合框进行排序

JLuc01

到目前为止,我正在尝试对ComboBox进行排序,但未成功。我正在使用下面在互联网上找到的经典代码:

 Sub SortComboBox(ByRef oCB As ComboBox)
    Dim vItems As Variant
    Dim i As Long
    Dim j As Long
    Dim vTemp As Variant
    ' Put the items in a array
    vItems = oCB.List
    ' Sort the array
    For i = LBound(vItems, 1) To UBound(vItems, 1) - 1
        For j = i + 1 To UBound(vItems, 1)
            If vItems(i, 0) > vItems(j, 0) Then
                vTemp = vItems(i, 0)
                vItems(i, 0) = vItems(j, 0)
                vItems(j, 0) = vTemp
            End If
        Next j
    Next i
    ' Clear the ComboBox
    oCB.Clear
    ' Add the sorted array back to the ComboBox
    For i = LBound(vItems, 1) To UBound(vItems, 1)
        oCB.AddItem vItems(i, 0)
    Next i
End Sub 

我用这一行称呼这个Sub:

SortComboBox (Sheet1.cboSolvent)

ComboBox'cboSolvent'在Worksheet1上,并且已经从worksheet2中填充。当组合框“ cboSolvent”已满但未排序时,我正在调用Sub“ SortComboBox”。

我收到以下错误:“需要对象”,但我不明白,因为对我而言,cboSolvent是一个对象(ComboBox对象)。此外,Sheet1.cboSolvent会突出显示以下消息:Sheet1.cboSolvent =“数据”。对我来说还不清楚的另一件事是,Sheet1.cboSolvent.Text =“ Data”。

我们将不胜感激,可以为您解决此问题,当然也可以帮助您了解我不了解的事情。

谢谢。

伊姆兰·马利克

尝试将其称为(不带括号)

SortComboBox Sheet1.cboSolvent

如果您需要通过刹车来调用子模块,请使用CALL关键字。

Call SortComboBox(Sheet1.cbsolvent)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Excel VBA-创建具有多个组合框的动态用户窗体并将所有组合框的值存储在一个数组中并对其进行排序

删除excel中组合框的空行 - VBA

Excel VBA在组合框中传递值的ID

将值分配给Excel VBA中的组合框

从组合框(窗体控件)Excel VBA中检索选定的选项

在 Excel 中通过 VBA 打开排序对话框

Excel VBA组合框值条件

Excel VBA-ActiveX组合框的计数

使用VBA在Excel中对表格进行排序?

在Excel VBA中对向量排序

Excel VBA 中的搜索框

VBA 循环填充组合框中的数字

VBA - 从组合框中删除项目

用于填充组合框的 Excel VBA 文本框

使用VBA为Excel中的组合框提供默认选定值

Excel VBA将项目添加到组合框中,没有重复的项目

如何在Excel VBA中以表单的形式向组合框添加项目?

为什么我无法使用Excel VBA将行添加到组合框列表中?

将组合框链接到Excel VBA中的textboxt-错误1004

Excel VBA:为什么组合框只显示列表中的一项?

将工作表数据插入到用户表单组合框中,没有重复 - Excel Vba

如何在Excel VBA中创建通用组合框填充例程?

从Excel VBA用户窗体组合框中的选定行的列中提取数据

如何将数据从组合框传递到 Excel VBA 中的命令按钮?

在键入 Excel VBA 时过滤组合框列表

使用Excel VBA对选择值激活组合框操作

如何从Excel唯一填充vba组合框?

在Excel 2013上使用VBA填充组合框(窗体控件)

Excel VBA 用组合框替换数据验证列表

TOP 榜单

热门标签

归档