2

VB6では、それができないようです:

myListBox.List = listContentStringArrray

VB は、「引数はオプションではありません」というコンパイル エラーで不平を言っています。これは、明らかに.List(index)、インデックスが必要なためです。

次のコードは VBA で機能します。

Private Sub CommandButton1_Click()
    Dim result() As String
    ReDim result(0)
    result(0) = "hello"
    ReDim Preserve result(1)
    result(1) = "world"

    ListBox1.List = result

End Sub

オブジェクト ブラウザを見ると、VBA の ListBox は実際にはMSForms.ListBoxであり、VB6 ではVB.ListBox.

VBA ListBox のListプロパティは として宣言されてProperty List([pvargIndex], [pvargColumn])おり、VB6 では でProperty List(Integer) As Stringあり、これが私の問題の原因です。

何も壊さずに既存のコードベースを「交換」する方法はありますか、またはVB.ListBox「VB 」ライブラリがVBAに含まれていないため、VBAでのみ使用するように設計されていますか? VB6 プロジェクトで参照すると、オブジェクト ブラウザーには表示されますが、ツールボックスには表示されません。MSForms.ListBoxMSFormsFM20.dllMSForms.ListBox

4

1 に答える 1