VBScript:在 VBA (Excel) 中使用形状 属性

VBScript: Use Shape property in VBA (Excel)

我写了一个 VBScript 来导出 .xlsx 文件中的数据。下拉控件应过滤数据。以下代码向您展示了我的添加方法:

sub AddDropDownElement
    FirstSheet.DropDowns.Add(0, 0, 100, 15).Name = "SheetFilter"

    with FirstSheet.Shapes("SheetFilter")
        .IncrementLeft 20.4
        .IncrementTop 34.2

        .Placement = xlFreeFloating
        .PrintObject = False
        .ListFillRange = ""
        .LinkedCell = ""
        .DropDownLines = 12
        .Display3DShading = False
    End With
end Sub

FirstSheet 是 "Excel.Application".

的工作表

执行增量方法非常有效。这些属性在 VBScript 中是未知的。

您的一些属性不是 Shape 对象的直接成员:一些属于 ControlFormat,一个属于 DropDown

Sub AddDropDownElement()
    Const DD_NM = "SheetFilter"

    FirstSheet.DropDowns.Add(0, 0, 100, 15).Name = DD_NM

    With FirstSheet.Shapes(DD_NM)
        .IncrementLeft 20.4
        .IncrementTop 34.2
        .Placement = xlFreeFloating
        With .ControlFormat
            .PrintObject = False
            .ListFillRange = ""
            .LinkedCell = ""
            .DropDownLines = 12
        End With
    End With
    FirstSheet.DropDowns(DD_NM).Display3DShading = True

End Sub

2013 年 Excel 测试