0
執着後我有,我從外部工作簿填充用戶窗體列表框。如果我保持源電子表格打開列表框可以正確顯示。當我關閉外部工作簿時,列表框似乎不再正確顯示,並且如果滾動列表框,文本將被一堆非打印字符替換。Excel的VBA保持列表框從工作簿SOURSE關閉
我啓動用戶的形式和當用戶選擇一個複選框用戶窗體被消耗以顯示附加字段。
Private Sub chkRepaceFromList_Click()
Dim sFileLocation As String
'When checkbox is checked, add replace from list option
If chkRepaceFromList = True Then
Me.Width = 400
sFileLocation = "C:\My File.xlsx"
'Populate listbox with items in replace from list spreadsheet
Call UpdateReplaceList
Else
Me.Width = 160
End If
End Sub
UpdateReplaceList填充列表框與項目 「C:\我的File.xlsx」
Sub UpdateReplaceList()
Dim sFileLocation As String
Dim wbList As Workbook
sFileLocation = "C:\My File.xlsx"
Set wbList = Workbooks.Open(sFileLocation)
wbList.Worksheets("Sheet1").Range("A10").Select
Range("A10", Selection.End(xlDown).Offset(0, 1)).Select ' Select all data
With lstReplaceListListBox
.ColumnCount = 2
.ColumnWidths = "100;100"
'.RowSource = wbList.Range("A1:C20").Address
.RowSource = Selection.Address
'.RowSource = vList
End With
wbList.Close
End Sub
我寧願不保持 「C:\我的File.xlsx」 打開比需要的不再如果我不關閉它,chkRepaceFromList_Click()事件就會被觸發,它會嘗試打開已經打開的文件。
我現在用的子UpdateReplaceList,因爲我需要使用相同的代碼當按下某些其他按鈕。
任何建議,將不勝感激。