Ir para conteúdo
Fórum Script Brasil
  • 0

Inserir linhas e copiar/colar no VBA


Marco Freitas

Pergunta

Olá, estou a precisar de ajuda no VBA, pois ainda estou a começar a aprender a trabalhar naquilo. Entretanto fiz um código para adicionar linhas e copiar/colar uma linhas qe contém formulas. No entanto, ao testar, por exemplo, se pedir 7 linhas ele dá umas 100. Não percebo o erro, alguém me pode ajudar?

A coluna é fixa, não preciso de adicionar...

O código é este:

Sub line()
Const coluna1 As Long = 1
Const coluna2 As Long = 6
Dim i As Long
Dim auxiliar As Long
linha = InputBox("A partir de qual linha?")
k = InputBox("Quantas linhas?")
auxiliar = linha
For i = linha To linha + k
With Application
.Range(.Cells(linha, coluna1), .Cells(linha, coluna2)).Select
End With
Selection.Insert Shift:=xlDown
linha = linha + 1
Next i
With Application
.Range(.Cells(linha, coluna1), .Cells(linha, coluna2)).Copy
.Range(.Cells(auxiliar, coluna1), .Cells(linha, coluna2)).PasteSpecial xlPasteAll
End With
Application.CutCopyMode = False
'Desactiva o método de cópia
End Sub

Editado por Marco Freitas
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Parece qe consegui, de qualquer das formas aceitam-se comentários :)

Podem usar à vontade

Sub line()
Const coluna1 As Long = 1
Const coluna2 As Long = 5
Dim i As Long
Dim auxiliar As Long

linha = InputBox("A partir de qual linha?")
k = InputBox("Quantas linhas?")
auxiliar = linha
For i = 1 To k Step 1
With Application
    .Range(.Cells(linha, coluna1), .Cells(linha, coluna2)).Select
    End With
Selection.Insert Shift:=xlDown
linha = linha + 1
Next i
With Application
    .Range(.Cells(linha, coluna1), .Cells(linha, coluna2)).Copy
    .Range(.Cells(auxiliar, coluna1), .Cells(linha, coluna2)).Select
    Selection.PasteSpecial xlPasteAll
    End With
Application.CutCopyMode = False
'Desactiva o método de cópia
End Sub

Editado por Marco Freitas
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...