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

Listar e Copiar


LGcs

Pergunta

' Pessoal tudo bom? Estou iniciando com o VBA e não sei nada, não encontrei aqui no forum

'a minha duvida tb, se alguém puder me ajudar vou ficar muito grato.

' seguinte, eu tenho uma tabela e preciso listar a ultima linha q não estava vazia,

'isso eu já encontrei. agora preciso copiar as linhas de uma determinada coluna, ate que

' chegue na ultima linha vazia q encontrei. vo exemplificar:

'A B C D E F G

'1 2 3 5 5 5

'1 2 3

'1 2 3 - esta é a ultima linha

'agora preciso pegar da coluna E ate G e copiar ate que chegue na ultima linha pra ficar assim

'A B C D E F G

'1 2 3 5 5 5

'1 2 3 5 5 5

'1 2 3 5 5 5

'A unica coisa q eu fiz ate agora é isso

Dim lastRow As Long
Dim x As Integer

    lastRow = Cells(Cells.Rows.Count, "A").End(xlUp).Row
       
       For x = 1 To lastRow
           Worksheets("plan1").Range("E1:G1").Copy _
          Range("E:G").PasteSpecial      
  Next

End Sub

Mas esta dando errado, alguém pode me ajudar?

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

3 respostass a esta questão

Posts Recomendados

  • 0
Public Sub PreencherCelulas()
    
    Dim wks As Worksheet
    
    Set wks = ThisWorkbook.ActiveSheet
    
    wks.Cells(1, 1).CurrentRegion.SpecialCells(xlCellTypeBlanks).Cells.FormulaR1C1 = "=R[-1]C"
    wks.Cells(1, 1).CurrentRegion.Copy
    wks.Cells(1, 1).CurrentRegion.PasteSpecial Paste:=xlPasteValues
    wks.Cells(1, 1).Select
    Application.CutCopyMode = False
    
    Set wks = Nothing
    
End Sub

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

  • 0

Eu tentei do jeito q você me disse so q tava dando um erro q não consegui descobrir o que era, ai continuei tentando a minha lógica e deu certinho.. Obrigado pela resposta, se você quizer me dizer o possivel erro agradeço.. Vai ai o meu codigo pra quem se interessar.

Plan1.Activate
Workbooks("nome do arquivo").Worksheets("planilha").Range("A6:K30").Copy _
Destination:=Worksheets("planilha").Range("A6")

   lastRowciclo = Cells(Cells.Rows.Count, "A").End(xlUp).Row
       
       For x = 6 To lastRowciclo
          Worksheets("planilha").Range("L6").Copy _
          Destination:=Worksheets("planilha").Cells(x, 12)
        Next

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

  • 0

Deu erro porque eu considerei a primeira célula como estando na célula "A1". Só que pelo seu código a primeira célula está na célula "A6".

A alteração do código abaixo deve funcionar.

Public Sub PreencherCelulas()
    
    Dim wks As Worksheet
    
    Set wks = ThisWorkbook.ActiveSheet
    
    wks.Cells(6, 1).CurrentRegion.SpecialCells(xlCellTypeBlanks).Cells.FormulaR1C1 = "=R[-1]C"
    wks.Cells(6, 1).CurrentRegion.Copy
    wks.Cells(6, 1).CurrentRegion.PasteSpecial Paste:=xlPasteValues
    wks.Cells(6, 1).Select
    Application.CutCopyMode = False
    
    Set wks = Nothing
    
End Sub

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...