2015-06-12 91 views
0

我是VBA新人,因此對基本問題表示歉意。我已經找遍各地尋找幫助,並嘗試了幾種不同的代碼選項,但它們都不適合我。
我看到了這個帖子,但是這是我想的第一件事: ComboBox,增加執行代碼 當現在我想這個代碼項目沒有出現在列表中向上:組合框列表項目不出現

Private Sub UserForm1_Activate() 
    Dim cName As Range 
    Dim ws As Worksheet 
    Set ws = Worksheets("PlayerListing") 
    For Each cName In ws.Range("Player_Name") 
    With Me.PlayerNameCombo 
    .AddItem cName.Value 
    End With 
    Next cName 

我想組合框拉在從一個單獨的標籤(PlayerListing),Range (Player_Name). 數據我試過重新開始,刪除一切,但似乎並沒有工作。 任何幫助將不勝感激!

回答

0

它對我來說是寫作的。你有沒有改變你的用戶表單的名字?如果您在調用Userform1時設置了Activate事件,那麼您將名稱更改爲ufPlayerNames,事件過程將無法正確格式化並且不會被識別爲事件。在程序的某個地方放置一個斷點 - 如果它在休息時停下來,那就OK了。如果沒有,請從代碼窗格頂部的左側下拉列表中選擇UserForm,從右側下拉列表中選擇激活,然後將代碼剪切並粘貼到新的存根中。

也許Player_Name沒有指向你認爲它的範圍。在立即窗口中,鍵入

?Sheets("PlayerListing").Range("Player_Name").Address 

並確保它是正確的。例如,如果你在Player_Name的頂部有一堆空白行,它可能看起來像沒有填充組合框,但它確實填充了很多空白行。

+0

非常感謝!它現在有效。這是Userform1與Userform的問題。另外,感謝您對範圍的信息。這非常有用,我會經常使用它!再次感謝。 – JBarker

相關問題