我想创建一个脚本,选择第一个空白行,然后在" A"中放置一个下拉列表。那一行的列。然后我想使用.additem("")来添加我需要的项目。我该怎么做?
提前致谢。
答案 0 :(得分:2)
试试这个
Sub AddComboBox(Col As Long)
Dim LastRow As Range
With ThisWorkbook.ActiveSheet
Set LastRow = .Cells(.Rows.Count, Col).End(xlUp)
End With
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", _
Link:=False, _
DisplayAsIcon:=False, _
Left:=0, _
Top:=LastRow.Top + LastRow.Height, _
Width:=100, _
Height:=16)
With .Object
.AddItem "Hi"
End With
End With
End Sub
15是默认的行高。当你的行有不同的高度时,所有的赌注都会关闭。
编辑1 :根据您的评论,您可以通过从其他子网调用它来尽可能多地使用它。我已经在第一个名为Col的子项中添加了一个参数,这是您列的ID。
Sub Main()
Dim I As Long
For I = 1 To 3
AddComboBox I
Next
End Sub
编辑2:我已经整合了处理变量行高的dee的高效注释。