Usuário com melhor resposta
Macro copiar e colar em outra planilha

Pergunta
-
Por favor, preciso de uma macro que copie somente as células que contenha valores de (N4:N43) da Planilha “ACI” e cole na primeira célula vazia da planilha “BDACI” coluna “A”.
Obs.: As duas planilhas estão no mesmo arquivo.
Desde de já agradeço pela ajuda...
- Editado Deusmar domingo, 7 de junho de 2015 21:29
Respostas
-
Então insira a seguinte instrução no final do código
ActiveSheet.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
Esse comando remove as informações duplicadas.
Por favor, marque como resposta as informações que lhe foram úteis
Abraço
- Sugerido como Resposta André Santo quinta-feira, 18 de junho de 2015 17:52
- Marcado como Resposta Deusmar domingo, 21 de junho de 2015 16:49
Todas as Respostas
-
Function colaValores()
Dim i As Integer
Dim j As Integer
Dim valor As String
For i = 4 To 43
Sheets("ACI").Select
valor = ""
If Cells(i, 14).Value <> "" Then
valor = Cells(i, 14).Value
Sheets("BDACI").Select
j = 1
While Cells(j, 1).Value <> ""
j = j + 1
Wend
Sheets("BDACI").Cells(j, 1).Value = valor
End If
Next i
End Function- Sugerido como Resposta André Santo segunda-feira, 8 de junho de 2015 16:20
-
Peço desculpas pela minha falta de conhecimento, mas... está dando Erro de Compilação.
Tenho que escrever alguma coisa antes ou depois do colar o código?
Estou fazendo da seguinte forma: Desenvolvedor è Macros è Defino o nome “Salvar” è Clico em criar. Depois colo o código entre as frases Sub Salvar() e End Sub.
Então fica assim:
Sub Salvar()
Function colaValores()
Dim i As Integer
Dim j As Integer
Dim valor As String
For i = 4 To 43
Sheets("ACI").Select
valor = ""
If Cells(i, 14).Value <> "" Then
valor = Cells(i, 14).Value
Sheets("BDACI").Select
j = 1
While Cells(j, 1).Value <> ""
j = j + 1
Wend
Sheets("BDACI").Cells(j, 1).Value = valor
End If
Next i
End Function
End Function
- Editado Deusmar segunda-feira, 8 de junho de 2015 16:10
-
1) Apague a linha:
Function colaValores()
2) Apague uma das linhas escrito end function no final da função, e na outra que sobrou, substitua o end function, por end sub.
- Editado André Santo segunda-feira, 8 de junho de 2015 16:17
- Sugerido como Resposta André Santo segunda-feira, 8 de junho de 2015 16:20
-
-
-
-
-
Então insira a seguinte instrução no final do código
ActiveSheet.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
Esse comando remove as informações duplicadas.
Por favor, marque como resposta as informações que lhe foram úteis
Abraço
- Sugerido como Resposta André Santo quinta-feira, 18 de junho de 2015 17:52
- Marcado como Resposta Deusmar domingo, 21 de junho de 2015 16:49