Botão macro de localizar

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
srobles
Professor
Professor
Mensagens: 432
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Botão macro de localizar

Mensagem por srobles » Sex Ago 11, 2017 8:53 pm

Adonias,

As novas planilhas receberão o CNPJ e o nome existentes na Plan1, ou apenas o CNPJ ou apenas o Nome?

Laços deste tipo são relativamente simples.

Abaixo deixo um exemplo:

Código: Selecionar todos

Sub adicionar_E_nomear_Planilhas()
    'Variável do tipo inteiro para sabermos
    'quantos clientes / planilhas devemos adicionar
    Dim nClientes As Integer
    'O número de clientes / planilhas é igual á quantidade
    'de linhas preenchidas na planilha Base
    nClientes = ThisWorkbook.Sheets("Plan1").UsedRange.Rows.Count
    
    'Variáveis do tipo texto (String) para armazenarmos o CNPJ e o nome
    Dim CNPJ, nomePlan As String
    'Laço para adicionarmos os clientes / planilhas
    For pCliente = 1 To nClientes
        'Se o valor da célula for diferente de nulo / branco
        If ThisWorkbook.Sheets("Plan1").Cells(pCliente, "A") <> "" Then
            'Armazenamos os valores
            CNPJ = ThisWorkbook.Sheets("Plan1").Cells(pCliente, "A")
            nomePlan = ThisWorkbook.Sheets("Plan1").Cells(pCliente, "B")
            'Adicionamos a nova planilha
            Sheets.Add , Sheets(Sheets.Count)
            'Nomeamos a nova planilha com os dados obtidos
            'a função Replace teve de ser usada, pois em nome de planilha
            'não é permitido o caracter /. Então temos de trocá-lo por outro
            'no caso o -
            Sheets(Sheets.Count).Name = Replace(CNPJ, "/", "-", 1, Len(nomePlan)) & " - " & nomePlan
        End If
    Next
End Sub
Abs
Anexos
tete2.zip
(18.18 KiB) Baixado 8 vezes


Saulo

Remember when you were young?
You shone like the sun.
Shine On You Crazy Diamond


Se suas dúvidas foram esclarecidas, acrescente ao lado do título o texto [RESOLVIDO].

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Adonias
Colaborador
Colaborador
Mensagens: 99
Registrado em: Sáb Jun 02, 2012 12:55 pm

Re: Botão macro de localizar

Mensagem por Adonias » Sáb Ago 12, 2017 10:27 am

Veja, o nome da planilha será apenas os nomes constante da coluna B
Na realidade vou estar realizando este comando de um planilha que quero copiar e mudar os nomes conforme a relação de nomes da planilha inicial a ser copiada.
Os nomes dentro das planilhas nas células "C1" e "G1" serão alterados: em C1 terá o nome da planilha conforme escrito na aba lá embaixo e na C1 o respectivo CNPJ

Eu já alterei para Renomear apenas com o NOME, mas falta alterar os nomes nas células em cada plan
Anexos
tete2.rar
(25.22 KiB) Baixado 5 vezes



Adonias
Colaborador
Colaborador
Mensagens: 99
Registrado em: Sáb Jun 02, 2012 12:55 pm

Re: Botão macro de localizar

Mensagem por Adonias » Sáb Ago 12, 2017 10:29 am

detalhe: as duas colunas da planilha inicial não poderão ser copiadas.

Outra coisa: não estou conseguindo as opções com o botão direito em cima de um butto que está na planilha. Meu excel é o 2010. Tem essa função nele?



srobles
Professor
Professor
Mensagens: 432
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Botão macro de localizar

Mensagem por srobles » Sáb Ago 12, 2017 11:10 am

Adonias,

Ok amigo. Entendi e realizei as alterações no código. Teste e retorne.

Quanto a habilitar as opções em controles contidos em uma planilha, existem duas possibilidades.

1) Se o controle for do tipo Controle de formulário, basta clicar e as opções aparecem;
2) Se o controle for do tipo ActiveX, você deve ter a guia Desenvolvedor habilitada, e, nesta guia, há o botão Modo de Design. clicando nele, o controle é desbloqueado e as opções aparecem.

Abs
Anexos
tete2.zip
(23.4 KiB) Baixado 10 vezes


Saulo

Remember when you were young?
You shone like the sun.
Shine On You Crazy Diamond


Se suas dúvidas foram esclarecidas, acrescente ao lado do título o texto [RESOLVIDO].

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Adonias
Colaborador
Colaborador
Mensagens: 99
Registrado em: Sáb Jun 02, 2012 12:55 pm

[RESOLVIDO]Botão macro de localizar

Mensagem por Adonias » Sáb Ago 12, 2017 8:05 pm

Muito bom mesmo. Era exatamente o que eu queria.
Valeu memso.
Quanto as propriedades do meu button, acho que o excel não foi instalado corretamente, pois mesmo estando no mo design não está aparecendo. Algo errado

Amigo, muito obrigado e espero sempre poder contar com sua preciosa ajuda, pois sempre tenho que desenvolver alguma planilha para agilizar algum procedimento e nada melhor do que aprender com um objetivo.
valeu



srobles
Professor
Professor
Mensagens: 432
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Botão macro de localizar

Mensagem por srobles » Sáb Ago 12, 2017 9:28 pm

Adonias,

Que bom que lhe serviu o modelo amigo!

Quanto as opções não estarem disponiveis, experimente fazer o reparo da instalação do office...Talvez resolva.

Amigo, sempre que precisar, pode contar comigo e com o fórum.

Abs


Saulo

Remember when you were young?
You shone like the sun.
Shine On You Crazy Diamond


Se suas dúvidas foram esclarecidas, acrescente ao lado do título o texto [RESOLVIDO].

Adonias
Colaborador
Colaborador
Mensagens: 99
Registrado em: Sáb Jun 02, 2012 12:55 pm

Re: Botão macro de localizar

Mensagem por Adonias » Ter Ago 22, 2017 7:09 pm

Srobles, ainda sobre a primeira planilha, a da busca do CNPJ em todas as planilhas, teria como eu deixar de procurar em apenas uma das planilhas, ou seja a busca pulasse essa planilha?
è que tenho uma das planilhas com todos os CNPJ e a busca vai localizar nela e isso não pode acontecer
.



srobles
Professor
Professor
Mensagens: 432
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Botão macro de localizar

Mensagem por srobles » Ter Ago 22, 2017 9:52 pm

Adonias,

Experimente o seguinte :

Mova a planilha que não fará parte da busca para a segunda posição, Ex :

Planilha_Lista_CNPJ, Planilha_Que_Não_Será_Incluida, Plan1, Plan2, Plan3 e assim por diante.

No módulo 2 existe a Function buscaCNPJ(ByVal CNPJ As String).

Nesta Function, localize a linha For idPlan = 2 To contPlanilhas e altere 2 para 3. Assim a busca será realizada da planilha de índice 3 até a última contida na Pasta de trabalho, pulando a que não deve ser usada.

Espero ter ajudado.

Abs


Saulo

Remember when you were young?
You shone like the sun.
Shine On You Crazy Diamond


Se suas dúvidas foram esclarecidas, acrescente ao lado do título o texto [RESOLVIDO].

Adonias
Colaborador
Colaborador
Mensagens: 99
Registrado em: Sáb Jun 02, 2012 12:55 pm

[RESOLVIDO] Botão macro de localizar

Mensagem por Adonias » Qua Ago 23, 2017 1:19 pm

Beleza Srobles, deu certo. Valeu novamente

Acabei de postar outra dúvida com o Título "localização Cruzada"
Creio que seu conhecimento ajudará muito.
Obrigadao



Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder