Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 两全其美_Excel_Vba - Fatal编程技术网

Excel 两全其美

Excel 两全其美,excel,vba,Excel,Vba,我正在寻找一个好方法来临时显示一长串的项目 假设我想查看工作簿中可用的样式。该代码几乎可以工作: Sub StyleLister() Dim sy As Style For Each sy In ActiveWorkbook.Styles msg = msg & vbCrLf & sy Next Call DisplayList(msg) End Sub Sub DisplayList(s As String) MsgBo

我正在寻找一个好方法来临时显示一长串的项目

假设我想查看工作簿中可用的样式。该代码几乎可以工作:

Sub StyleLister()
    Dim sy As Style
    For Each sy In ActiveWorkbook.Styles
        msg = msg & vbCrLf & sy
    Next
    Call DisplayList(msg)
End Sub

Sub DisplayList(s As String)
    MsgBox s
End Sub
我有一个又高又瘦的MsgBox。它的高度不足以显示列表的底部,并且没有滚动条可以到达列表的底部,但是它有一个漂亮的X按钮来关闭该框

如果我使用:

Sub DisplayList(s As String)
    Dim AXTbox As Object
    Set AXTbox = ActiveSheet.OLEObjects.Add(ClassType:="Forms.TextBox.1", Link:=False, _
        DisplayAsIcon:=False, Left:=240, Top:=62.25, Width:=134.25, Height:= _
        171)
    With AXTbox
        .Name = "MyBox"
        .Object.Text = s
        .Object.MultiLine = True
        .Object.ScrollBars = 2
    End With
    AXTbox.Select
End Sub
我有一个文本框。如果我在文本框中单击,我可以看到并使用滚动条。但它没有X按钮,可以轻松解雇员工

我想要两全其美——一个滚动条和一个解雇按钮


有什么建议吗?

为什么不在excel中添加一个用户表单,您可以在其中放置一个文本框,表单将有自己的关闭按钮和您需要的所有空间


在快速搜索之后,我找到了解释如何将表单添加到Excel表格中的方法。

作为副词:而不是
msg&vbCrLf&sy
使用
msg&(vbCrLf&sy)
将长字符串与两个相连的小字符串连接起来,而不是将长字符串与小字符串连接两次