Para inserir uma linha em uma tabela do Excel usando VBA, basta usar o método "Insert" do objeto "Range". Por exemplo, para inserir uma linha na linha 5 da planilha "Plan1", você pode usar o seguinte código:
Sub InserirLinha()Worksheets("Plan1").Range("5:5").Insert Shift:=xlDown End Sub
O parâmetro "Shift" especifica para onde as células existentes devem mover-se quando a nova linha é inserida. No exemplo acima, "xlDown" significa que as células abaixo da linha inserida serão movidas para baixo. Outra opção possível é "xlToRight", que move as células à direita. Também é possível especificar o número de linhas a serem inseridas usando a propriedade "EntireRow" do objeto "Range":
Sub InserirVariasLinhas()Worksheets("Plan1").Range("5:7").EntireRow.Insert Shift:=xlDown End Sub
Este código irá inserir três linhas na planilha "Plan1", a partir da linha 5.
Note que este método não adiciona dados à linha inserida - ele apenas empurra as células existentes para baixo (ou para a direita), criando uma nova linha em branco. Se você precisa inserir dados na nova linha, você pode usar as propriedades "Value" ou "Formula" do objeto "Range" para definir os valores das células. Por exemplo:
Sub InserirDados()Dim rngNovaLinha As RangeSet rngNovaLinha = Worksheets("Plan1").Range("5:5").EntireRowrngNovaLinha.Insert Shift:=xlDownrngNovaLinha.Cells(1, 1).Value = "Valor 1"rngNovaLinha.Cells(1, 2).Formula = "=A1*2"rngNovaLinha.Cells(1, 3).Value = "Valor 3" End Sub
Este código cria uma nova linha na linha 5 da planilha "Plan1", e define os valores das células A5, B5 e C5 para "Valor 1", o valor da célula A1 multiplicado por 2 (usando uma fórmula), e "Valor 3", respectivamente.