Excel 在VBA中可否调用winsock控件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel 在VBA中可否调用winsock控件相关的知识,希望对你有一定的参考价值。

不可以,VBA中调不出那个控件的,只能调用API 参考技术A winsock必须多线程,Excel建议不要用多线程。用其他程序很简单的实现winsock,就好比说杀牛不能用鸡刀,虽然说花很多工夫可以做到,但真没有必要。

excel VBA 组合框 取值

请教在excel中想将组合框中的值取出赋予变量如何编写代码?
如组合框名:下拉框1,变量名:序号

参考技术A 序号=下拉框1 参考技术B excel中的下拉框有三种,一个是excel窗体工具栏中的,一个是excel控件工具栏中的,还有一个是VBA界面中的。
这几个使用都不方便,所以我不使用它们,不如直接引用单元格方便,或者使用“数据-有效性”中的序列。

下面这个是excel VBA中的帮助文件,也许对你有用。
ListBox 控件、AddItem 和 RemoveItem 方法以及 ListIndex、ListCount 属性示例

下例用 AddItem、RemoveItem 以及 ListIndex 和 ListCount 属性来添加和删除列表框的内容。

若要使用该示例,请将示例代码复制到某窗体的声明变量部分。请确保该窗体包含:

名为 ListBox1 的列表框。

名为 CommandButton1 和 CommandButton2 的两个命令按钮控件。

Dim EntryCount As Single

Private Sub CommandButton1_Click()
    EntryCount = EntryCount + 1
    ListBox1.AddItem (EntryCount & " - Selection")
End Sub

Private Sub CommandButton2_Click()
    '确认列表框包含列表项
    If ListBox1.ListCount >= 1 Then
        '如果没有选中的内容,用上一次的列表项。
        If ListBox1.ListIndex = -1 Then
            ListBox1.ListIndex = _
                    ListBox1.ListCount - 1
        End If
        ListBox1.RemoveItem (ListBox1.ListIndex)
    End If
End Sub

Private Sub UserForm_Initialize()
    EntryCount = 0
    CommandButton1.Caption = "Add Item"
    CommandButton2.Caption = "Remove Item"
End Sub本回答被提问者采纳

以上是关于Excel 在VBA中可否调用winsock控件的主要内容,如果未能解决你的问题,请参考以下文章

Excel-VBA - 列出任何给定工作簿的所有用户窗体的控件

vba日历控件只能在一个单元格用怎么办

请VBA高手帮忙,我要在EXCEL中插入一个控件,每次只要点击这个控件就能实现下面的功能

如何在Excel VBA中定义一个在窗体控件和模块中均能使用的变量?

excel里面我想 用VBA实现调用另一个工作簿中的数据怎么解决

Excel VBA:无法访问表单控件?