宏可以在任何地方在Excel中创建组合框

时间:2014-01-22 18:58:37

标签: excel vba combobox

我想创建一个允许将组合框放置在我选择的每个单元格中的宏。我能够创建一个宏将组合框放在同一个单元格中,我记录它。它给它一个范围,比如“N15”,所以每次执行宏时,组合框都堆叠在同一个单元格中。由于我是VB新手,我要求有人能告诉我把它放在活动单元格中的技巧。

我有一个参考单元链接。我在其中一个论坛中找到了一个乐于助人的人,当你复制粘贴时,他提供了一个“刷新”链接的代码。将它与组合框结合起来会很好。

当我添加ActiveCell时,它会给我一个错误:“对象不支持此属性或方法”。

这个代码是简单复制粘贴的宏创建的:

Sub AAA()
'
' AAA Macro
'

'
    Selection.Copy
    ActiveCell.Offset(-3, 1).Range("A1").Select
    ActiveSheet.Paste
    ActiveSheet.Shapes.Range(Array("ComboBox4")).Select
    Application.Run "ExcelTemplate_DayOne.xlsm!Sheet1.Test"
End Sub

范围(“A1”)将确保每次运行宏时,组合框将被添加到同一个单元格。如果我将Activesheet.Paste更改为ActiveCell.Paste,它会给我上述错误,我提到过。

1 个答案:

答案 0 :(得分:0)

要使用活动单元格,请使用ActiveCell

例如,要获取活动单元格的行,请使用:ActiveCell.Row

获取列:ActiveCell.Column

要在那个单元格中放置一些东西,你可以这样做:

ActiveCell = "SOMETHING!"

或者:

Cells( ActiveCell.Row, ActiveCell.Columns ) = "SOMETHING TOO !"