簡體   English   中英

Excel VBA組合框清除

[英]Excel VBA Combo box clear

我正在使用excel 2010。

我想清除工作表中組合框的內容(清除為空白時,如未選中),但我不知道如何選擇和清除。 我試着選擇一個這樣的組合框:

Sheet1.ComboBox1.Clear

但是Sheet1對象下沒有'ComboBox'。 選擇我的組合框的唯一用途是:

Sheet1.Shapes("Drop Down 24")

我不知道如何選擇和清除內容,任何人都可以幫助我嗎?

關於什么

ActiveSheet.Shapes.Range(Array("Drop Down 24")).Select
With Selection
    .ListFillRange = ""
End With

我假設您實際上想要將控件的顯示值設置為空白。 在這種情況下,對於下拉對象 ,如您所示,您將執行此操作:

Sheet1.Shapes("Drop Down 2").OLEFormat.Object.Value = 0

其中0表示列表中的哪個元素被選中IE none。

如果這不起作用,那么你可能實際上正在處理一個ComboBox,在這種情況下你想要使用它:

Sheet1.Shapes("Drop Down 2").OLEFormat.Object.Object.Value = ""

請注意,此代碼是在Excel 2003中創建並測試的(我在此計算機上擁有的內容),因此在Excel 2010上,到達實際對象的路徑可能略有不同。)

作為一個非常程度的程序員,我寧願選擇這種方式。 這不取決於工作表上的excel“范圍內存選擇”。

Set oCombo = Sheets("SheetName").Shapes("cmbComboName").ControlFormat
For I = oCombo.ListCount To 1 Step -1
    oCombo.RemoveItem (I)
Next

將下拉列表重置為空白單元格,但仍保留列表以供將來使用。

創建宏以清除單元格。 在錄制過程中,只需選擇單元格並選擇“清除內容”。 這會將選擇設置為空白單元格,但仍保留下拉列表。

例如,它看起來像這樣。

Range("H3").Select
Selection.ClearContents

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM