用于插入用户定义的列数的宏

时间:2015-05-20 22:23:31

标签: excel excel-vba vba

我有以下代码,每次在包含来自单元格D3的数据的每列之后运行它时将添加7列。有没有办法添加一个消息框,询问我们想要添加的行数?

dim j As Integer, k As Integer
j = Range("D3").End(xlToRight).Column
'j is the last column
For k = j To 5 Step -1
Range(Cells(1, k), Cells(3, k + 6)).EntireColumn.Insert
Next k

End Sub

1 个答案:

答案 0 :(得分:0)

当然,请参阅下面的代码并注释(修改插入行)

假设您要求用户输入要插入的列数。

请参阅https://msdn.microsoft.com/en-us/library/office/gg251811(v=office.15).aspx

Sub Wsh_AddColumnsFromUserInput()

Dim j As Integer, k As Integer
Dim bCols As Byte

bCols = InputBox("How many columns do want to insert?", "Some tittle here")
Rem Set min & max
If bCols < 1 Then bCols = 1
If bCols > 7 Then bCols = 7

'j is the last column
j = ActiveSheet.Range("D3").End(xlToRight).Column

For k = j To 5 Step -1
    ActiveSheet.Columns(k).Resize(, bCols).EntireColumn.Insert
Next k

End Sub