2012-10-01 92 views
2

我試圖複製listbox到另一個列表框複製到另一個

所以我清除目標listbox所有項目這樣

While Forms!SalesCallInformation!lstMills.ListCount > 0 
     Forms!SalesCallInformation!lstMills.RemoveItem (0) 
    Wend 

然後我複製的所有項目這樣

For i = 0 To lstMillsToAdd.ListCount - 1 
     Forms!SalesCallInformation!lstMills.AddItem (lstMillsToAdd.Column(0, i) & ";" & lstMillsToAdd.Column(1, i) & ";" & lstMillsToAdd.Column(2, i)) 
    Next 

問題是,在目的地listbox,我仍然有舊的項目。 但是當我在Forms!SalesCallInformation!lstMills.ListCount上設置手錶時,我可以看到它正在遞減,所以它必須刪除一些東西。

這是什麼刷新表單?原因我在插入新項目後嘗試這樣做:Forms!SalesCallInformation.Refresh但我有相同的結果。

有沒有人有想法?

謝謝

此外,rowSourceType設置爲value list

+0

爲什麼你不想只將行源從一個複製到另一個? – Fionnuala

+0

好吧,當我想要刪除的時候,我嘗試過'Forms!SalesCallInformation!lstMills.RowSource =「」',它沒有工作,所以我認爲這是不可能的。我現在要試試 – Marc

+0

@Remou我得到​​了同樣的結果,即所有的舊數據和新的數據。所以我會按照你的方式去做,但是我仍然需要修復這個問題 – Marc

回答

4

這個例子對我的作品:

Private Sub Button1_Click() 
Me.List2.RowSource = Me.List0.RowSource 
End Sub 

Private Sub Button2_Click() 
Me.List2.RowSource = "" 
End Sub 

兩個ListBox都值列表。行來源設置爲「abc」;「def」;「ghi」

+0

謝謝!你讓我意識到我的保存按鈕是好的,所以我發現在關閉按鈕中我有一個form.requery。我同時也像你一樣清理我的代碼。 – Marc

+0

我很高興你發現了這個問題。 – Fionnuala

相關問題