类型在 Visual Basic 中不受支持

Visual Basic 中并不支持所有类型。 此错误具有以下原因和解决方法:

  • 您尝试在程序中使用一个在 Visual Basic for Applications 中没有等效项的类型。 例如,Visual Basic 不具有指针或无符号整数类型,因此,如果您尝试从对象库创建这些类型之一的变量,则会出现此错误。

    在以下示例中,即使 Rainbow 可能是有效的结构,但如果 Visual Basic 包含 Visual Basic 无法识别的类型,则无法创建该类型的变量:

      Dim MyVar As Rainbow    ' Causes error. 
    

    如果此类型是对象库中的函数的有效参数类型,则此错误仅意味着您无法在您自己的代码中创建此类型的变量。 虽然您无法总是使用对象的文档中指定的数据类型来声明变量,但通常有一个 Visual Basic 等效项。

    例如,虽然 Visual Basic 不具有指针类型,但您可以使用 AddressOf 运算符将指向一个函数的指针传递给一个 API 函数。 此外,检查 Variant 类型的子类型。 通常,您可以将这些子类型用作 Visual Basic 中未直接提供的类型的等效项。 不过,在某些情况下,Visual Basic 根本没有等效项。 例如,数据指针不可用。

有关其他信息,选择有问题的项并按 F1(在 Windows 中)或 HELP(在 Macintosh 上)。

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。