Insira o número especificado de colunas entre duas colunas nomeadas

2

Estou tentando usar o VBA para inserir um número definido de colunas entre duas pré-existentes e definidas.

No entanto, ele continua inserindo as novas colunas à esquerda do intervalo. Eu quero inserir as colunas dentro do intervalo.

Aqui está o meu código VBA para fornecer algum contexto:

Sub InsertNewColummnbetween()
Range(Range("Data_FirstColumn").Offset(, 1), Range("Data_Net").Offset(,2)).EntireColumn.

Application.DisplayAlerts = False
Dim i As Integer
For i = 1 To Range("Assumptions!B26").Value
    Columns(1).INSERT
Next i
Application.DisplayAlerts = True
End Sub

O que há de errado com meus comandos?

    
por survivor686 13.01.2014 / 16:12

2 respostas

0

Parte disso pode depender se você tem uma planilha com dados ou se você definiu um ListObject.

No seu código, eu evitaria o loop, já que você só quer inserir 2 colunas uma vez.

Sub InsertNewColumn()
  Dim objSheet as Worksheet
  Set objSheet = ActiveWorksheet
  With objSheet
        .Columns(2).Insert shift:=xlRight
  End With
End Sub
    
por 13.01.2014 / 20:41
0

O método Insert somente permite que o Intervalo seja deslocado para baixo ou para a direita (nesse caso, para a direita). Por esse motivo, você precisará especificar o intervalo da coluna que deseja finalizar à direita das colunas inseridas. Veja este link para mais informações sobre o Insert. / p>     

por 13.01.2014 / 20:49