创建一个宏以添加包含下拉选项的新行

时间:2016-04-26 17:59:00

标签: excel vba copy row dropdown

What I start with

This is what I want it to do, but for every row

这是我复制并粘贴第一行时创建的宏。这将复制列B和C的下拉菜单,我将为每个新行提供这些菜单。因此,它不能只复制正在复制的行中出现的值 - 它需要包含下拉列表(新行可以高于或低于其余行)。可以调整下面的代码来实现吗?

Sub AddLine() ' ' AddLine宏 ' '键盘快捷键:Ctrl + Shift + A. '     范围(" B4:C4")选择。     Selection.Copy

Range("B5:C5").Select
ActiveSheet.Paste

Range("D5").Select
Application.CutCopyMode = False

Range("B5").Select

End Sub

1 个答案:

答案 0 :(得分:0)

以下是一种方法。它从B4:C4复制验证(仅验证)并将其粘贴到ActiveCell下面的一行。假设光标在第6行中 where ,当您运行此宏时,Validation下拉列表将被复制到单元格B7:C7

Sub CopyValidation()
    Dim rCopy As Range


    Application.ScreenUpdating = False

    Set rCopy = ActiveSheet.Range("B4:C4")

    rCopy.Copy
    ActiveSheet.Range("B" & ActiveCell.Row + 1).PasteSpecial xlPasteValidation
    Application.CutCopyMode = False

    Application.ScreenUpdating = True
End Sub

这是你需要的吗?