Página 1 de 1

Problema no VBA do excel

Enviado: 26 Mai 2020 às 12:25
por brunocunha
Bom dia SR's. Estou com uma dúvida no VBA do excel, tenho uma planilha com 12 abas divididas em meses (Janeiro, Fevereiro,....)

outra aba com alguns dados de algumas peças, e outra aba fiz uma CAPA

Quero fazer com que meus colaboradores só tenham acesso a essa aba CAPA e preenchendo ela e apertando o botão os dados vão direto para a aba do mês correspondente preenchidas na capa. Fiz isso em outra planilha e deu certo, só que nesta estou com alguns problemas e nao estou conseguindo

alguem poderia me dar um aúxilio vendo o que errei ou o que faltou ou me ajudando a melhorar ?

Obrigado Segue anexo a planilha

Re: Problema no VBA do excel

Enviado: 26 Mai 2020 às 12:58
por AfonsoMira
Boa tarde.

Experimente adicionar este código ao botão.
Código: Selecionar todos
Data = Range("C7").Value
mes = Month(Data)

Select Case mes

Case 1
planilha = "Janeiro"
Case 2
planilha = "Fevereiro"
Case 3
planilha = "Março"
Case 4
planilha = "Abril"
Case 5
planilha = "Maio"
Case 6
planilha = "Junho"
Case 7
planilha = "Julho"
Case 8
planilha = "Agosto"
Case 9
planilha = "Setembro"
Case 10
planilha = "Outubro"
Case 11
planilha = "Novembro"
Case 12
planilha = "Dezembro"

End Select

Sheets(planilha).Activate

ultima_linha = Range("G10000").End(xlUp).Row

ultima_linha = ultima_linha + 1

Range("C7:AO7").Copy Sheets(planilha).Range("B" & ultima_linha)

Range("C7:G7").Value = ""
Range("J7:O7").Value = ""
Range("K7:V7").Value = ""
Atenção: Não vai funcionar perfeitamente, pois o senhor tem as linhas ocultas, fazendo assim com que o VBA não consiga saber qual a ultima_linha para inserir o registo.

Terá que modificar o seu ficheiro para todas as linhas, por exemplo da planilha "Janeiro" aparecerem. Podendo assim o VBA localizar o ultimo registo e adicionar o novo logo na linha abaixo.

Alguma dúvida só chamar.

:D :D :D

Re: Problema no VBA do excel

Enviado: 26 Mai 2020 às 14:06
por osvaldomp
Código: Selecionar todos
Private Sub CommandButton1_Click()
 [C7:X7].Copy Sheets(Format([C7], "mmmm")).Cells(Rows.Count, 2).End(3)(2 - (Sheets(Format([C7], "mmmm")).[B6] = "") * 1)
End Sub

Re: Problema no VBA do excel

Enviado: 26 Mai 2020 às 16:25
por brunocunha
Estou com problemas, nao consegui usar o código que voces dois me passaram, desculpa a ignorancia, sou novo em VBA é minha segunda planilha que tento fazer usando o mesmo, alguem consegue resolver esse problema pra essa planilha funcionar ? obrigado

AfonsoMira escreveu:Boa tarde.

Experimente adicionar este código ao botão.
Código: Selecionar todos
Data = Range("C7").Value
mes = Month(Data)

Select Case mes

Case 1
planilha = "Janeiro"
Case 2
planilha = "Fevereiro"
Case 3
planilha = "Março"
Case 4
planilha = "Abril"
Case 5
planilha = "Maio"
Case 6
planilha = "Junho"
Case 7
planilha = "Julho"
Case 8
planilha = "Agosto"
Case 9
planilha = "Setembro"
Case 10
planilha = "Outubro"
Case 11
planilha = "Novembro"
Case 12
planilha = "Dezembro"

End Select

Sheets(planilha).Activate

ultima_linha = Range("G10000").End(xlUp).Row

ultima_linha = ultima_linha + 1

Range("C7:AO7").Copy Sheets(planilha).Range("B" & ultima_linha)

Range("C7:G7").Value = ""
Range("J7:O7").Value = ""
Range("K7:V7").Value = ""
Atenção: Não vai funcionar perfeitamente, pois o senhor tem as linhas ocultas, fazendo assim com que o VBA não consiga saber qual a ultima_linha para inserir o registo.

Terá que modificar o seu ficheiro para todas as linhas, por exemplo da planilha "Janeiro" aparecerem. Podendo assim o VBA localizar o ultimo registo e adicionar o novo logo na linha abaixo.

Alguma dúvida só chamar.

:D :D :D

Re: Problema no VBA do excel

Enviado: 26 Mai 2020 às 16:42
por osvaldomp
Veja no arquivo anexado.

Re: Problema no VBA do excel

Enviado: 27 Mai 2020 às 05:35
por AfonsoMira
Boas veja se é isto que prentede:

:D

Re: Problema no VBA do excel

Enviado: 27 Mai 2020 às 11:54
por brunocunha
Porem, quando clico em habilitar edição as macros são desativadas e o botão nao funciona