alteração do nome d...
 
Notifications
Clear all

alteração do nome das abas conforme lista

12 Posts
2 Usuários
0 Reactions
2,538 Visualizações
(@juliowd)
Posts: 0
New Member
Topic starter
 

Olá amigos.
Já procurei no fórum e na net mas não encontrei nada que me ajudasse eficientemente.
Minha necessidade é a seguinte:
na minha planilha, eu:
(1) tenho uma lista de 50 colaboradores
(2) cada colaborador tem um aba específica para seu banco de horas (na planilha anexa fiz com 4)

Bom, eu tenho um menu interativo, do tipo:
"informe ao lado o nome do profissional que desejo inclusão no banco de horas". Aí na célula ao lado, seria uma célula com validação de dados por lista. Isto já está pronto na planilha anexa.
Eu gostaria de que tivesse um botão "OK" que:
(3) localizasse a aba respectiva ao nome selecionado e me levasse até ela.
Então, isso eu não sei como fazer. Pois os nomes podem variar mês a mês.

O que eu fiz que funciona é criar um hiperlink para cada nome, ligando à aba específica. Mas aí teria uma lista para que a pessoa clicasse em cima. Eu não queria que aparecessem todos de uma vez.
Minha ideia inicial seria que ao selecionar um profissional diferente através da lista de validação de dados, ele fizesse o hiperlink relativo ao profissional que eu selecionei.

Confesso que não sei se consegui me expressar.
Valeu!!

ps.: na planilha anexa, fiz ela com 4 abas para os profissionais.

 
Postado : 04/09/2014 1:07 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

(3) localizasse a aba respectiva ao nome selecionado e me levasse até ela.

Além de algumas postagens minhas temos outras postagens na base do fórum!!

Sub Selecionar_Guia()
    Dim x As String
    x = InputBox("Por favor insira o nome da guia. ", " Guias")
    Sheets(x).Select
End Sub

tem uma postagem do JoseA, que é listado todas as guias do arquivo, ao clicar na guia deseja tal guia é selecionada!!
Veja:

'codigo para ir as guias nomeadas do excel
'Deve ser criado um botão em cada guia e adicionar um ÚNICO modulo para os botões
Private Sub UserForm_Initialize()
'Esse é o formulário
Dim sht As Worksheet
For Each sht In ActiveWorkbook.Worksheets
ListBox1.AddItem sht.Name
Next sht
End Sub
Private Sub ListBox1_Click()
Sheets(ListBox1.ListIndex + 1).Activate
'Unload Me
End Sub

Att

 
Postado : 04/09/2014 1:55 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Veja seu modelo adaptado!!
https://www.sendspace.com/file/s84scm

Att

 
Postado : 04/09/2014 2:00 pm
(@juliowd)
Posts: 0
New Member
Topic starter
 

OI Alexandre! Obrigado pelo help, cara!
Só que eu não manjo nadica de nada de userform. =/
eu tava aqui pensando que até poderia usar esse userform..
mas cada nome de aba teria que ter o nome do colaborador que está na lista de colaboradores contida na aba DADOS BANCO SEMESTRAL.

Mas deixe eu te perguntar:
como faço para que na resposta à pergunta:

Sub Selecionar_Guia()
    Dim x As String
    x = InputBox("Por favor insira o nome da guia. ", " Guias")
    Sheets(x).Select
End Sub

aparecesse uma lista contendo apenas a lista de pessoas que quero que ele selecione? assim como acontece na validação de dados... e que desses nomes, ele direcionasse para a ABA respectiva ao nome...

 
Postado : 04/09/2014 3:17 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

É impressão minha ou há dois tópicos relatando o mesmo assunto?
viewtopic.php?f=10&t=12951&p=67952#p67952

Att

 
Postado : 06/09/2014 7:04 pm
(@juliowd)
Posts: 0
New Member
Topic starter
 

Neste tópico eu gostaria que fosse possível acessar uma aba dependendo da informação que teria dentro de uma célula. Se muda o valor contido na célula, muda a aba que irá acessar. Este botão OK é uma imagem. Não daria para fazer com userform. Iria atrapalhar o usuário.

A outra pergunta é sobre um botão igual ao "voltar" dos navegadores.

 
Postado : 07/09/2014 9:26 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Vamos ver se eu entendi, em um arquivo você tem as guias (Guia1, Guia2, Guia3, Guia4, Guia5, Guia6)

Se no intervalo de A1 até A3 eu tenho (Guia3, Guia4, Guia5), então somente essas guias serão acessadas, caso no intervalo de A1 até A3 eu tenho (Guia1, Guia4, Guia6), então somente essas guias serão acessadas.

Mas como será o acesso, terá que clicar em um botão, a macro será disparada ao preencher uma célula?

Att

 
Postado : 07/09/2014 7:46 pm
(@juliowd)
Posts: 0
New Member
Topic starter
 

Não ao preencher a célula.
Por exemplo: Na plan1 tem uma lista com 50 nomes de pessoas.
Cada pessoa recebeu uma Guia.
Eu fiz um hiperlink em cada uma dessas 50 células ligando a primeira célula à Guia1; a segunda célula ligando a Guia2, e assim sucessivamente... Assim a pessoa ve o nome e clica. Pois cada Guia está ligada a uma pessoa daquela lista.
E na célula (por exemplo D5) eu criei validação de dados com LISTA, puxando justamente essas 50 células.
O botão OK verificará qual é a informação nessa célula específica (D5) e me levará a pessoa que eu quero.

 
Postado : 07/09/2014 8:23 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Seu entendi, dessa vez o código foi feito com erro proposital, para você entenda que o código só vai funcionar se o nome das guias esteja correto com a validação, caso contrário surgira um erro de compilação!
https://www.sendspace.com/file/groic3

Att

 
Postado : 08/09/2014 6:08 am
(@juliowd)
Posts: 0
New Member
Topic starter
 

Caraca Alexandre! Ficou demais!
Bem mais que eu imaginava.
Obrigado, man!
Agora eu fiquei com outro receio.
É que já que o nome das abas tem que ser igual aos nomes contidos na validação, acho que não vai funcionar quando eu trocar o nome.
Porque hoje está funcionário 1.
Mas amanhã será, por exemplo, Alexandre.
E quando na lista for Alexandre, ele não vai encontrar uma aba com este nome.
Vai dar erro.
Como fazer com que ao atualizar a lista de profissionais, ele mude automaticamente o nome da aba?

 
Postado : 08/09/2014 9:03 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Caraca Alexandre! Ficou demais!
Bem mais que eu imaginava.

Se foi útil, click na mãozinha!!!!

Eu não entendi sua nova solicitação, você deseja fazer algo assim...
Coluna A
Lista nomes dos profissionais
Nome1
Nome2
Nome3
Nome4
Nome5
Nome6
Nome7
Nome8
Nome9
Nome10
Coluna B
Nome das futuras guias
NovoNome1
NovoNome2
NovoNome3
NovoNome4
NovoNome5
NovoNome6
NovoNome7
NovoNome8
NovoNome9
NovoNome10
Após click em um botão (ou algo desse tipo), atualizar os nomes antigos para os nomes novos?
Att

 
Postado : 08/09/2014 10:18 am
(@juliowd)
Posts: 0
New Member
Topic starter
 

Então... quase isso... não há uma coluna B. De profissional 01, vai virar, por exemplo, Alexandre.
Coluna A
profissional 01
profissional 02
profissional 03
profissional 04
profissional 05

Quando a planilha for usada, ficará:
Coluna A
Alexandre
Júlio
Fabio
Luiz
Claudio

Essa lista de pessoas é a lista que vai na validação de dados.
Então o que antes fazia com que ao escolher PROFISSIONAL 01, ele ia para a aba PROFISSIONAL 01, quando a célula contendo essa informação PROFISSIONAL 01 se transformar em Alexandre, eu preciso que esta mesma aba seja aberta, só que com o nome de Alexandre.
Aí como tua macro faz relação com o nome da guia, pensei que pudéssemos criar um botão que alterasse o nome da guia automaticamente...

 
Postado : 08/09/2014 10:50 am