2017-12-21 4 views
0

サブフォームからComboBoxにアクセスしようとしています。したがって、私はそれにコンボボックスオブジェクトを渡そうとしています。ComboBoxオブジェクトを作成してSubに渡す

しかし、私はそれを渡すためにコンボボックスオブジェクトを作成することはできないようです。サブオブジェクトに入るときは常に空です。

Dim ctl As ComboBox 

Set ctl = Me.cb_FcnName 'cb_FcnName is the name of the Combobox I'm trying to access 

Call ColumnEntries2Combobox(ctl) 

そして、これは私のサブです:私は、必要なコンボボックスオブジェクトを作成する方法上の任意のドキュメントを見つけるように見えることはできませんいくつかの理由

Private Sub ColumnEntries2Combobox(ByRef Combo As ComboBox) 
    Combo.AddItem = Worksheets(WorksheetName).Cells(currRow, 2) 
End Sub 

をこれは私がしようとしてきたものです下に入る...

ありがとうございました!

+1

あなたはあなたができる、新しいオブジェクトを作成する必要がありますはずの'ColumnEntries2Combobox(cb_FcnName) ' – braX

+0

私はこれを最初からやっていました。 AddItemでSubを実行します。それは、それが関数または変数を期待していることを私に伝えます。 – budekatude

+1

そのコードは私にとって役に立ちます。 「サブに入るときはいつも空です」と説明してください。どうして知っていますか? ComboBoxはUserFormに、Subは同じクラスモジュールにありますか? –

答えて

2

AddItemはプロパティではなくメソッドです。メソッドの場合は、空白の後ろに引数を指定します。プロパティを何かに設定するのと比較します。

だからこれは非常に簡単なデモがあり、一般的なエラーです

 Combo.AddItem = Worksheets(WorksheetName).Cells(currRow, 2) 

 Combo.AddItem Worksheets(WorksheetName).Cells(currRow, 2) 

に変更します

object.Property = value 

object.Method arg1, arg2 
関連する問題