2015-05-20 3 views
0

У меня есть следующий код, который будет добавлять 7 столбцов каждый раз при запуске после каждого столбца, содержащего данные из ячейки D3. есть ли способ добавить окно сообщения, которое будет запрашивать количество строк, которые мы хотим добавить?макрос для вставки заданного пользователем числа столбцов

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 

ответ

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 
+0

Благодаря спариванию, отлично работает! – user3214725